Scanner类为简单的文本扫描器,作为文本处理使用。其有很多构造函数,最为实用的是在控制台与输入字符流的配合。
可以使用Scanner(InputStream source)或Scanner(InputStream source,charsetName)
现使用前者:
Scanner scanner=new Scanner(System.in);
如上图,“System.in”是一个静态的InputStream,则可以使用其作为参数。到此只是成功构建一个Scanner对象,程序运行并不会等待用户输入,以下是实验。
import java.util.Scanner;
public class B
{
public static void main(String[] args)
{
System.out.println("What's your name");
Scanner scanner=new Scanner(System.in);
System.out.println("This is...");
}
}
运行结果为:
可以知道,System.in和C++里的cin>>不一样,同为输入流,但System.in并不等待用户输入完数据敲回车才继续运行,且配合Scanner类使用。
接下来便可使用Scanner中的各种方法实现输入操作了。
String str=scanner.nextLine(); //程序等待用户输入字符串敲回车结束输入
同理:
int number=scanner.nextInt(); //程序等待用户输入数字敲回车结束输入
……………..