- import java.io.IOException;
- import java.io.InputStreamReader;
-
- public class Test1 {
- public static void main(String[] args) {
- String str = readString("请输入字符串:");
- System.out.println("readString 方法的输入:" + str);
- }
- private static String readString(String prompt) {
- BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
- String str = null;
- try {
- System.out.print(prompt);
- str = br.readLine();
- } catch (IOException e) {
- e.printStackTrace();
- }
- return str;
- }
- }
复制代码 JDK 1.4 及以下的版本中要想从控制台中输入数据只有一种办法,即使用System.in获得系统的输入流,再用转换流InputStreamReader和包装流BufferedReader来获取键盘的输入数据。而且有个很大的缺点,只能获取字符串,还得自己手动去强转。
但是这样太麻烦了,于是JDK5.0中提供了Scanner,其实并不是Scanner将控制台输入给简单化了,只是在其内部的实现中已经将IOException处理了,而且采用InputStreamReader来一个字符一个字符进行扫描读取的,只是Scanner做了更高层次的封装。而且它可以读任何类型的数据,多方便啊。 |