如果去掉13,14,15行(就是判断输入的数字是否大于0的那几行代码),我输入1进去就会打印出1
但是不去掉13,14,15行的话,需要输入两次1,才会打印出结果,不知道是为什么
public static void main(String[] args) { int n = 0; boolean keeprunning = true; System.out.println("请输入一个整数:"); while(keeprunning) { Scanner input = new Scanner(System.in); //判断输入的是不是一个整数 if(!input.hasNextInt || input == null) { System.out.println("您输入的不是一个整数,请重新输入:"); } //判断输入的数字是否大于0 else if(input.nextInt() < 0) { System.out.println("请重新输入一个大于0的整数:"); } else { n = input.nextInt(); keeprunning = false; } } System.out.println(n); }
轻浮与傲慢
相关分类