作用
- 与电脑交互
- 从键盘读入数据
用例
import java.util.Scanner;
public class Scan {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("使用next接收");
if(scanner.hasNext()) {
String str = scanner.next();
System.out.println("输出" + str);//不能输出空白后的东西
}
//scanner.close();
System.out.println("=======================");
Scanner scanner1 = new Scanner(System.in);
System.out.println("使用nextLine接收");
if(scanner1.hasNextLine()) {
String str1 = scanner1.nextLine();
System.out.println("输出" + str1);//输出回车前的所有东西
}
System.out.println("=======================");
int i=0;
double d=0.0;
System.out.println("请输入整数");
if (scanner1.hasNextInt()){
i = scanner1.nextInt();
System.out.println("输入的int是"+i);
}
else
System.out.println("你输入的不是整数");
scanner1.next();
System.out.println("请输入小数");
if (scanner1.hasNextDouble()){
d = scanner1.nextDouble();
System.out.println("输入的double是"+d);
}
else
System.out.println("你输入的不是小数");
scanner1.close();
}
}
注意点
- 需要import java.util.Scanner;
- Scanner的常用方法有hasNext()、next()、hasNextLine()、nextLine()、hasNextInt()、nextInt()、其他的指定的数据类型类似,最后close()。
has开头的返回值是布尔类型(判断)。next开头没有指定数据类型(获取)的返回String,指定数据类型的返回相应的数据类型。
next()不能输出空白后的东西。nextLine()输出回车前的所有东西
- 无论哪个Scanner类close()之后再也打不开了。new也不行