我尝试在我的程序中使用if else
语句进行菜单选择。每当我输入退出应用程序的号码时,应用程序仍会运行。我不知道应该怎么做才能解决这个问题,但是我们将非常感谢任何帮助。提前谢谢。
import java.util.Scanner;
public class Gradebook {
public static void main(String[] args ){
Scanner input = new Scanner(System.in);
System.out.println("(1) Average grades for a new student");
System.out.println("(2) Quit");
int selection = input.nextInt();
if( selection == 1) {
System.out.println("Grades will be put in accordingly: \n Homework \n Quizzes \n Tests");
System.out.println("Once all grades have been put in, type -1 to continue");
String name = input.next();
}
else{
System.out.println("Goodbye.");
}
int total = 0;
int counter = 0;
System.out.println("Please enter numeric homework grade or \"-1\" to quit: ");
int grade = input.nextInt();
while( grade != -1) {
total = total + grade;
counter = counter + 1;
grade= input.nextInt();
}
if (counter > 0) {
double average = total / (double)counter;
System.out.println("The average for Homework is: " + average);
}
else
System.out.println("No grades were entered.");
System.out.println("Please enter numeric Quiz grade or \"-1\" to quit: ");
while( grade != -1) {
total = total + grade;
counter = counter + 1;
grade = input.nextInt();
}
if(counter > 0) {
double average = total / (double)counter;
System.out.println("The average for Quizzes is: " + average);
}
else
System.out.println("No grades were entered.");
System.out.println("Please enter numeric Test grade or \"-1\" to quit: ");
while(grade != -1) {
total = total + grade;
counter = counter + 1;
grade = input.nextInt();
}
if(counter > 0) {
double average = total / (double)counter;
System.out.println("The average for Tests is: " + average);
}
else
System.out.println("No grades were entered.");
}
}
答案 0 :(得分:4)
我假设这是应该退出的代码:
else{
System.out.println("Goodbye.");
}
打印"再见"但是,不退出应用程序。试试这个:
else{
System.out.println("Goodbye.");
System.exit(0); // causes the application to end right here
}
或:
else{
System.out.println("Goodbye.");
return; // returns from the main function
}
答案 1 :(得分:0)
有两种方法可以执行此操作:更改if语句以包含return
,或将if语句更改为包含System.exit(0)
。
使用return
:
if( selection == 1) {
System.out.println("Grades will be put in accordingly: \n Homework \n Quizzes \n Tests");
System.out.println("Once all grades have been put in, type -1 to continue");
String name = input.next();
}
else{
System.out.println("Goodbye.");
return;
}
使用System.exit
:
if( selection == 1) {
System.out.println("Grades will be put in accordingly: \n Homework \n Quizzes \n Tests");
System.out.println("Once all grades have been put in, type -1 to continue");
String name = input.next();
}
else{
System.out.println("Goodbye.");
System.exit(0);
}