|
阅读:10119回复:0
关于使用 hasNextInt() 方法
hasNextInt()方法是判断控制台接收是否为数字, 当你在控制台输入一个字符的时候, hasNextInt()判断你输入这个字符是不是数字,而不是接收值.
在对类型进行了判断后,还在进行相应的类型接收: 如:int num = input.nextInt(); String str = input.next(); 在未进行接收时,再执行hasNextInt ,结果为返回第一次输入的判断状态,并且,不在提示输入: 如: 第一种情况 if(input.hasNextInt()){ System.out.println(input.hasNextInt()); int num = input.nextInt(); } 分析: 在接收输入值前,重复的调用,所以它返回的是第一次输入时的判断结果,不会再次提示输入 第二种情况 if(input.hasNextInt()){ int num = input.nextInt(); System.out.println(input.hasNextInt()); } 分析: 此情况,是在接收输入值后,再重复调用hasNextInt(), 它将提供用户第二次输入,然后,输出第二次输入值的判断结果 此外,在循环判断用户输入时,注意以下情况: do{ if(input.hasNextInt()){ int num = input.nextInt(); break; }else{ System.out.println("请输入数字"); // input.next(); } }while(true); 分析: 循环判断,用户输入的为数字,注意,在用户输入不为数字时,也要进入接收,否则,将会出现死循环。 直接添加input.next()接收数据,可不用保存在变量中。 |
|
|