学习笔记--java中获取用户控制台输入的两种方式

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可以做到。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值