BufferedReader
最基础的方法,从System.in输入流中获取数据
BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); try { System.out.println(br.readLine()); } catch (IOException e) { e.printStackTrace(); }
Scanner
Scanner sc = new Scanner(System.in); System.out.println(sc.nextLine());
Console
java6新增
Console console = System.console(); if(console != null){ System.out.println(console.readLine()); }
说明
- Console主要是为了方便程序与用户交互,但是有一个限制就是需要使用系统自带的控制台来运行程序,如果在IDE中使用的话,就有很大的可能获取不到Console。
- Console的另一个特点就是可以隐藏密码:
Console console = System.console(); if(console != null){ System.out.println(console.readPassword()); }
这样就看不到用户输入的密码了,但是没有办法将用户的输入显示成“*”或者别的字符
- Scanner方便将用户的输入转换成对应的java类型,另外,Scanner的输入源不限于System.in,还可以是其他的输入源。
时间: 2024-10-14 08:39:14