Java Scanner连续用户输入?

对于java实践,我试图创建一个程序,从键盘读取整数,直到输入负数。

并打印忽略负数的整数的最大值和最小值。

一旦运行,有没有办法在同一个程序中连续输入? 我每次都要继续运行程序输入一个数字。

任何帮助,将不胜感激

public class CS { public static void main(String []args) { Scanner keys = new Scanner(System.in); System.out.println("Enter a number: "); int n = keys.nextInt(); while(true) { if(n>0) { System.out.println("Enter again: "); n = keys.nextInt(); } else { System.out.println("Number is negative! System Shutdown!"); System.exit(1); } } } } 

这是我的代码的一部分 – 它有效,但我认为有一种更简单的方法来做我想要的但不确定如何!

 import java.util.Scanner; public class ABC { public static void main(String []args) { int num; Scanner scanner = new Scanner(System.in); System.out.println("Feed me with numbers!"); while((num = scanner.nextInt()) > 0) { System.out.println("Keep Going!"); } { System.out.println("Number is negative! System Shutdown!"); System.exit(1); } } } 

你可以这样做:

 Scanner input = new Scanner(System.in); int num; while((num = input.nextInt()) >= 0) { //do something } 

这将使num等于下一个整数,并检查它是否大于0.如果它是负数,它将退出循环。

一个简单的循环可以解决您的问题。

  Scanner s = new Scanner(System.in); int num = 1; while(num>0) { num = s.nextInt(); //Do whatever you want with the number } 

上述循环将一直运行,直到满足负数。

我希望这可以帮助你