用户交互Scanner
我们可以通过Scanner实现程序与人的交互,Scanner是Java5的性特征,我们可以通过Scanner 类获取用户的输入
基本语法
Scanner s = new Scanner(System.in);
通过 Scanner 类的 next() 与 nextLine() 方法获取输入的字符串
在读取前我们一般需要使用 hasNext() 与 hasNextLine() 判断是否还有输入的数据。
实验例子:
使用Next()方法
public class Demo01 {
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);
}
//凡是属于I/O流的类必须使用完毕后关闭,防止资源浪费
scanner.close();
}
}
使用NextLine()方法
import java.util.Scanner;
public class Demo02 {
public static void main(String[] args) {
//从键盘接收数据
Scanner scanner = new Scanner(System.in);
System.out.println("使用nextLine方式接收:");
//判断是否还有要输入的数据
if (scanner.hasNextLine()){
//进行接收数据
String str = scanner.nextLine();
System.out.println("输入的内容为:"+str);
}
scanner.close();
}
}
不使用hasNext等判断
import java.util.Scanner;
public class Demo03 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入数据:");
//我们是可以不使用 hasNext 或 hanNextLine() 判断的
String str = scanner.nextLine();
System.out.println("输出的内容为:"+str);
scanner.close();
}
}
Scanner对象
next()
-
一定要读取到有效数据才可以结束输入
-
再得到有效字符之前的空格,会无视掉
-
只有得到有效字符后,才可以将空白作为结束符
-
next()不能接收还有空格的字符串
nextLine() (常用)
-
可以以回车作为结束符,表示可以获取所有字符,包括空白

浙公网安备 33010602011771号