java控制台输入
一、java控制台输入
java控制台输入有如下几个方法
1、JDK 1.4 及以下版本读取的方法
JDK 1.4 及以下的版本中要想从控制台中输入数据只有一种办法,即使用System.in获得系统的输入流,再桥接至字符流从字符流中读入数据。只能读取字符串,若需要读取其他类型的数据需要手工进行转换。代码如下:
1 BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 2 String str = null; 3 try 4 { 5 str = br.readLine(); 6 System.out.println(str); 7 8 } 9 catch (IOException e) 10 { 11 e.printStackTrace(); 12 }
2、JDK 5.0 读取的方法
从 JDK 5.0 开始,基本类库中增加了java.util.Scanner类,根据它的 API 文档说明,这个类是采用正则表达式进行基本类型和字符串分析的文本扫描器。使用它的Scanner(InputStream source)构造方法,可以传入系统的输入流System.in而从控制台中读取数据。canner不仅可以从控制台中读取字符串,还可以读取除char之外的其他七种基本类型和两个大数字类型,并不需要显式地进行手工转换。代码如下:
1 Scanner scanner = new Scanner(System.in); 2 String str = scanner.nextLine(); 3 System.out.println(str);
3、JDK 6.0 读取的方法
从 JDK 6.0 开始,基本类库中增加了java.io.Console类,用于获得与当前 Java 虚拟机关联的基于字符的控制台设备。在纯字符的控制台界面下,可以更加方便地读取数据。代码如下:
1 Console console = System.console(); 2 if (console == null) 3 { 4 throw new IllegalStateException("不能使用控制台"); 5 } 6 7 String str = console.readLine("console"); 8 System.out.println(str);