为了账号安全,请及时绑定邮箱和手机立即绑定

有个抛出的问题.

public static void main(String[] args) {	
			Scanner scan=new Scanner(System.in);	
				System.out.println("请输入中文:");	
					try {		
					String Name=scan.nextLine();	
				}catch(Exception e) {	
				System.out.println("输入的不是字符串!");	
					}	
					}
这是我在这个练习里出现的问题 我单独把他拿出来了。
为什么抛出不了异常??
我把String Name=scan.nextLine();  换成 int Name=scan.nextInt(); 抛出 输入的不是数字  就可以 
抛出字符串就不行..那里出问题了??


正在回答

2 回答

通过API查询可以看到, Scanner中的 nextLine这个方法,返回值就是一个String类型,所以改不了


https://img1.sycdn.imooc.com//5b32d6aa000122cb09640052.jpg

0 回复 有任何疑惑可以回复我~

比如说你输入了123,系统自动识别成"123"字符串,所以输入正确,当然不抛出了。

0 回复 有任何疑惑可以回复我~
#1

一轮温柔月 提问者

那怎么改求解老哥.
2018-06-08 回复 有任何疑惑可以回复我~
#2

0000zjn 回复 一轮温柔月 提问者

参考一下思路: https://blog.csdn.net/u011240877/article/details/49907751
2018-06-08 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第三季
  • 参与学习       409790    人
  • 解答问题       4340    个

Java中你必须懂得常用技能,不容错过的精彩,快来加入吧

进入课程

有个抛出的问题.

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信