scanner的next()方法为什么输入整数也不报错,如何让它报错呢?
请输入对应的数字对购物车进行管理
1
添加商品到购物车
所有商品信息:
商品信息[商品编号:goods004,商品名称:手机,商品价格:2300.0,商品描述:android手机]
商品信息[商品编号:goods002,商品名称:饮水机,商品价格:299.0,商品描述:带净化功能的饮水机]
商品信息[商品编号:goods003,商品名称:笔记本电脑,商品价格:4999.0,商品描述:15寸笔记本电脑]
商品信息[商品编号:goods001,商品名称:水杯,商品价格:56.0,商品描述:不锈钢水杯]
请输入要添加的商品编号:
2
请输入要添加的商品数量:
正在回答 回答被采纳积分+1
同学你好,1、不报错的原因是:当你输入一个整数时,next()方法会在输入有效字符(也就是整数)之后,将其以字符串的形式展示出来,所以输入整数程序也不会报错。
2、next()方法一定要读取到有效的字符后才结束输入,对输入有效字符前遇到的空格键,Tab键,Enter键等,next()会自动将其去掉,只有在输入有效字符之后,next()方法才将其后的空格键,Tab键,Enter等视为分隔符或者结束符。所以返回值为String类型的next()方法不会报错。
3、如果要让从键盘接收数据的方法报错,可以使用Scanner.nextInt()等具体类型方法,只要输入一个其他类型,程序就会报错。
如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~
- 参与学习 人
- 提交作业 7317 份
- 解答问题 14452 个
想要入门学编程?多年一直活跃在编程语言排行版前列的Java是一个很好的选择。本路径将从Java基础语法、面向对象、常用工具类三部分,为你开启软件开发的大门!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星