java中hasNextInt()方法的意思,不要专业术语,越通俗易懂越好!

我举个例子:if(input.hasNextInt()){intshu=input.nextInt();}1.为什么intshu=input.nextInt()不能放if... 我举个例子: if( input.hasNextInt() ){ int shu = input.nextInt(); } 1.为什么int shu = input.nextInt()不能放if语句上面?2.我知道hasNextInt()是判断int shu = input.nextInt是否为整型,但不明白他们两有什么必然的联系,我调试的时候到hasNextInt叫你输入一个数,然后执行到int shu = input.nextInt()后为什么就不用你再输入数了呢?而是直接将在hasNextInt()这输过的数赋值给shu?int shu = input.nextInt()不也是接收一个数吗? 哪位大神帮我解决下这个问题?比较纠结,老师给我讲了一下还是似懂非懂,讲的越通俗易懂越好。 展开
 我来答
叶子希0295
推荐于2017-09-26 · TA获得超过313个赞
知道答主
回答量:171
采纳率:100%
帮助的人:127万
展开全部
hasNextInt()方法是判断控制台接收是否为数字,当你在控制台输入一个字符的时候,hasNextInt()判断你输入这个字符是不是数字,而不是接收值,当if判断通过之后执行接收,也就是你输入的那个字符,你也可以试试 public static void main(String[] args) { Scanner input = new Scanner(System.in); if(input.hasNextInt()){ int num = input.nextInt(); System.out.println(num); }else{ System.out.println("请输入正确数字!~"); } } 当你输入非数字的字符的时候他会直接进入else块,所以说hasNextInt()只起到判断作用而不是接收数据
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式