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()不也是接收一个数吗? 哪位大神帮我解决下这个问题?比较纠结,老师给我讲了一下还是似懂非懂,讲的越通俗易懂越好。
展开
1个回答
展开全部
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()只起到判断作用而不是接收数据
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询