目录
java.util.Scanner 是 Java5 的新特征,我们可以通过 Scanner 类来获取用户的输入。
具体实现步骤:
- 导包:import java.util.Scanner;
- Scanner的实例化:Scanner scan = new Scanner(System.in);
- 调用Scanner类的相关方法(next() / nextXxx()),来获取指定类型的变量
注意:需要根据相应的方法,来输入指定类型的值。如果输入的数据类型与要求的类型不匹配时,会报异常:InputMisMatchException 导致程序终止。
返回值 | 方法名 | 方法描述 |
---|---|---|
String | next() | 将输入的下一个标记扫描为 String |
String | nextLine() | 将输入的下一个标记扫描为 String |
short | nextShort() | 将输入的下一个标记扫描为 short |
int | nextInt() | 将输入的下一个标记扫描为 int |
long | nextLong() | 将输入的下一个标记扫描为 long |
float | nextFloat () | 将输入的下一个标记扫描为 float |
double | nextDouble() | 将输入的下一个标记扫描为 double |
byte | nextByte() | 将输入的下一个标记扫描为 byte |
boolean | nextBoolean() | 将输入的下一个标记扫描为 boolean |
next() 与 nextLine() 区别:
next():
- 一定要读取到有效字符后才可以结束输入。
- 对输入有效字符之前遇到的空白,next() 方法会自动将其去掉。
- 只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。
- next() 不能得到带有空格的字符串。
nextLine():
- 以Enter为结束符,也就是说 nextLine()方法返回的是输入回车之前的所有字符。
- 可以获得空白。
实例:
package ForExample;
//1.导包
import java.util.Scanner;
public class index {
public static void main(String[] args) {
// Scanner的实例化
Scanner scan = new Scanner(System.in);
// 调用Scanner类的相关方法
System.out.println("请输入姓名");
String name = scan.next();
System.out.println("请输入年龄");
int age = scan.nextInt();
System.out.println("请输入性别(男/女)");
char sex = scan.next().charAt(0);
//输出结果
System.out.printf("姓名:%s\n年龄:%s\n性别:%s\n", name, age, sex);
}
}