Java 用字符串终止循环。(爪哇)

Java 用字符串终止循环。(爪哇),java,loops,Java,Loops,编写一个使用while循环的程序。在循环的每次迭代中,提示用户输入一个数字–正、负或零。记录用户输入的总数,并记录用户输入的数量。当用户输入“q”退出时,程序应停止。用户完成后,打印总计和用户键入的条目数 当我输入一个像0这样的数字来终止循环时,我可以让这个程序工作。但我不知道如何得到它,这样一根绳子就能阻止它 public static void main(String[] args) { Scanner in = new Scanner(System.in); int cou

编写一个使用while循环的程序。在循环的每次迭代中,提示用户输入一个数字–正、负或零。记录用户输入的总数,并记录用户输入的数量。当用户输入“q”退出时,程序应停止。用户完成后,打印总计和用户键入的条目数

当我输入一个像0这样的数字来终止循环时,我可以让这个程序工作。但我不知道如何得到它,这样一根绳子就能阻止它

public static void main(String[] args) {
    Scanner in = new Scanner(System.in);
    int count = 0;
    int sum = 0;
    int num;
    System.out.println("Enter an integer, enter q to quit.");
    num = in.nextInt();
    while (num != 0) {
        if (num > 0){
        sum += num;
        }
        if (num < 0){
        sum += num;  
        }
        count++;
        System.out.println("Enter an integer, enter q to quit.");
        num = in.nextInt();
    }
    System.out.println("You entered " + count + " terms, and the sum is " + sum + ".");

}
publicstaticvoidmain(字符串[]args){
扫描仪输入=新扫描仪(系统输入);
整数计数=0;
整数和=0;
int-num;
System.out.println(“输入一个整数,输入q退出”);
num=in.nextInt();
while(num!=0){
如果(数值>0){
sum+=num;
}
if(num<0){
sum+=num;
}
计数++;
System.out.println(“输入一个整数,输入q退出”);
num=in.nextInt();
}
System.out.println(“您输入了“+count+”项,总和为“+sum+”);
}

您的策略是将输入作为字符串,检查是否为“q”,如果不是,则转换为数字和循环

(由于这是您的项目,我只提供策略而不是代码)

这是一个粗略的策略:

String line;
line = [use your input method to get a line]
while (!line.trim().equalsIgnoreCase("q")) {
   int value = Integer.parseInt(line);
   [do your work]
   line = [use your input method to get a line]
}

java需要一个整数,但我们应该给出相同的异常。解决这个问题的一种方法是输入一个字符串,这样,如果用户第一次按下的是Q,那么如果不是Q,就永远不会进入循环。我们假设用户是专家,只有在完成后才会输入数字和Q。在这段时间内,我们使用num.parseInt(String)将字符串转换为数字

Integer-num;
字符串输入;
而(!input.equal(q)){
num=num.parseInt(输入)
if(num
减少你的代码,简单易懂,给你想要的东西

还可以添加一个if语句来检查它们是否输入了另一个随机值(这样,如果用户不侦听,程序不会崩溃)。类似于:

if(isLetter(num.charAt(0))
  System.out.println("Not an int, try again");

将它放在while循环之后,因此它已经被检查过了,如果它是q。

你的意思是尝试读入一个字符串并检查它是否等于
“q”
?(再检查用户是否输入了一个数字,等等)如果您不舒服或者不知道如何检查JavaAPI,我们也可以建议您使用一些方法
  public static void main(String[] args) {
    Scanner in = new Scanner(System.in);
    int count = 0;
    int sum = 0;
    String num;
    System.out.println("Enter an integer, enter q to quit.");
    num = in.next();
    while (!num.equals("q")) {
          sum += Integer.parseInt(num);
        count++;
      System.out.println("Enter an integer, enter q to quit.");
      num = in.next();
    }
    System.out.println("You entered " + count + " terms, and the sum is " + sum + ".");

  }
if(isLetter(num.charAt(0))
  System.out.println("Not an int, try again");