Java学习之Scanner用户交互
获取一个输入并输出
Scanner scanner=new Scanner(System.in);
System.out.println("使用nextLine方式接收:");
//判断用户是否输入字符串
if (scanner.hasNextLine()){
String str=scanner.nextLine();
System.out.println("输出的内容为:"+str);
}
注意Next和NextLine的区别:
Next有空格就断了,不能全部输出;而NextLine却能继续输出。
编程最后记得关闭scanner。
scanner.close();
进阶判断输入数据
是否为整数和小数
package scanner;
import java.util.Scanner;
public class Demo03 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int i=0;
float f=0.0f;
System.out.println("请输入整数:");
//判断用户是否输入字符串
if (scanner.hasNextInt()) {
i=scanner.nextInt();
System.out.println("整数数据:" + i);
}else{
System.out.println("输入的不是整数!");10
}
System.out.println("请输入小数:");
if (scanner.hasNextFloat()) {
f=scanner.nextFloat();
System.out.println("小数数据:" + f);
}else{
System.out.println("输入的不是小数!");
}
scanner.close();
}
}
获取多行输入并处理
package scanner;
import java.util.Scanner;
public class Demo04 {
public static void main(String[] args) {
Scanner scanner= new Scanner(System.in);
//和
double sum=0;
//计数
int m=0;
//通过循环判断是否还有输入,并求和处理
while (scanner.hasNextDouble()){
double x=scanner.nextDouble();
m=m+1;
sum=sum+x;
System.out.println("你输入了"+m+"个数据,然后当前结果sum="+sum);
}
System.out.println(m+"个数和为"+sum);
System.out.println(m+"个数的平均值是"+sum/m);
scanner.close();
}
}