Scanner
System.out.println("请输入:");
Scanner k=new Scanner(System.in);
String s=k.nextLine();
int i=k.nextInt();
float f=k.nextFloat();
double d=k.nextDouble();
byte b=k.nextByte();
BufferedReader
InputStreamReader m=new InputStreamReader(System.in);
BufferedReader n=new BufferedReader(m);
System.out.print("请输入:");
//获取用户输入的文本行
String name="哈哈哈";
try {
name = n.readLine();
} catch (IOException e) {
// TODO Auto-generated catch block
System.out.println("敬请期待!");
}//此时会抛出异常,要进行处理,第一种处理抛出异常,第二种处理try catch
两种方式的区别
BufferedReader是字符输入流,不能读入基本类型值;然而Scanner是一个用正则表达式处理过的流,可以读入基本类型值。
Scanner 使用分隔符模式将其输入分解为标记,默认情况下该分隔符模式与空白匹配。然后可以使用不同的 next 方法将得到的标记转换为不同类型的值。所以说Scanner不能输入空格,如果你希望取得含有空格的字符串BufferedReader可以做到。