循环中断程序

时间:2019-04-28 16:20:09

标签: java

我写了一个计算成绩的代码。但是,如果我在控制台中输入9999,则该程序应该会中断而没有任何输出。我该怎么办?应该使用哪个循环?我尝试了一个while循环,但是程序仍然给我输出..这是我的while循环代码,无法正常工作。除while循环外,该程序有效。我该如何写得更好?

import java.util.Scanner;
public class average {

    public static double average (double [] grade ){

        double sum = 0;
        int number = grade.length;

        for(int i = 0; i<grade.length; i++){
            sum+=grade[i];
        }

        double average = sum / number;
        return average;

    }

    public static void main (String [] args){
        Scanner s = new Scanner(System.in);
System.out.println("How much grades you add?");

int number = s.nextInt();

while(number == 9999){
    break;
}

double [] grade = new double [number];

System.out.println("Please enter : ");

for(int i = 0; i<grade.length; i++){
    grade[i] = s.nextDouble();
        }
        System.out.println("My grades are: ");
        for(int i = 0; i<grade.length; i++){
            System.out.println(grade[i] + " | ");

        }

        System.out.println("");
        System.out.println("My average: " +average(grade));

    }

}

2 个答案:

答案 0 :(得分:1)

您不需要中断任何循环,只需要退出程序即可。

if (number == 9999) { 
   System.exit(); 
}

答案 1 :(得分:1)

您正在使用 break ,它会立即退出仅循环。如果要退出程序,应使用 if return ,如下所示:

if(number == 9999) {
    return;
}

这将退出程序,因为使用 return 退出当前功能。当前函数是main(),这是程序的主要代码。因此,如果退出该程序,则将退出该程序。

在具有返回值的函数中(非 void 函数),您需要指定返回值,如下所示:

return 9999;

如果您在其他程序线程上,则需要调用 System.exit(0)