您的位置:首页 > 编程语言 > Java开发

java输入输出基础

2013-09-23 17:25 197 查看
声明:该文是在其他博文的基础上加以修改总结而来。

1、Java从键盘输入的基本语句:

格式1:Scanner sc = new Scanner (new BufferedInputStream(System.in));格式2:Scanner sc = new Scanner (System.in);注意:在读入数据量大的情况下,格式1的速度会快些。读一个整数: int n = sc.nextInt(); 读一个字符串:String s = sc.next();读一个浮点数:double t =sc.nextDouble()读一整行: String s = sc.nextLine(); 判断是否有下一个输入可以用sc.hasNext()或sc.hasNextInt()或sc.hasNextDouble()或sc.hasNextLine();
示例1:读入整数

Input 输入数据有多组,每组占一行,由一个整数组成。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
while(scan.hasNext()){
//读入整数语句
int score=scan.nextInt();
//输出从键盘输入的整数
System.out.println(score);
}
}
}


示例2:读入实数

可以输入多组数据,每组占2行,第一行为一个整数N,指示第二行包含N个实数。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc =new Scanner(System.in);
while(sc.hasNext()){
//每组的第一行:读入整数n
int n = sc.nextInt();
for(int i=0;i<n;i++){
//每组的第二行:读入n个实数
double a = sc.nextDouble();
System.out.print(a+" ");//测试
}
}
}
}


示例3:读入字符串
1)输入数据有多行,第一行是一个整数n,表示测试实例的个数,后面跟着n行,每行包括一个由字母和数字组成的字符串。

import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc =new Scanner(System.in);
//第一行:读入整数n
int n = sc.nextInt();
for(int i=0;i<n;i++){
//读入n行字符串
String a = sc.next();
//System.out.print(a+" ");//测试
}
}
}

2)给定一个日期,输出这个日期是该年的第几天。 Input 输入数据有多组,每组占一行,数据格式为YYYY/MM/DD组成。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int[] dd = {0,31,28,31,30,31,30,31,31,30,31,30,31};
while(sc.hasNext()){
int days = 0;
//输入数据例如2013/9/23
String str = sc.nextLine();
//将输入的字符串拆分
String[] date = str.split("/");
int y = Integer.parseInt(date[0]);//年 字符串转换为int的方法
int m = Integer.parseInt(date[1]);//月
int d = Integer.parseInt(date[2]);//日

//闰年的二月是29天所以要days++
if((y%400 == 0 || (y%4 == 0 && y%100 !=0)) && m>2) days ++;
days += d;
for(int i=0;i<m;i++){
days += dd[i];
}
System.out.println(days);
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: