Scanner类用类获取用户的输入
基本语法:
Scanner s = new Scanner(System.in)
Scanner类的next()与nextLine()方法获取输入的字符串,在读取前我们一般需要使用hasNext()与hasNextLine()判断是否还有输入数据。
package com.le.base.com.le.base;
import java.util.Scanner;
public class demo05 {
public static void main(String[] args) {
//创建一个扫描器对像,用于接收键盘数据
Scanner scanner = new Scanner(System.in);
System.out.println("使用next方式接收:");
//判断用户有没有输入字符串
if(scanner.hasNext()){
//使用next方式接收
String str = scanner.next();
System.out.println("输出的内容为:"+ str);
}
//凡是属于IO流的类,如果不关闭一直占用资源,记得用完关掉
scanner.close();
}
}
System.out.println("使用nextLine方式接收:");
if(scanner.hasNextLine()){
String str = scanner.nextLine();
System.out.println("输出的内容为:"+ str);
}
小案例:
package com.le.base.com.le.base;
import java.util.Scanner;
public class demo06 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
double sum = 0;
int n = 0;
//通过循环判断是否还有输入,并在里面对每一次进行求和统计
while (scanner.hasNextDouble()){
double x = scanner.nextDouble();
n++;
sum = sum + x;
}
System.out.println(n + "个数和为:"+ sum);
System.out.println(n + "个数的平均值是:"+ (sum/n));
scanner.close();
}
}