首页 > 解决方案 > 虽然循环没有在 Java 中爆发

问题描述

我已经用 Java 编写了这个 switch case 程序。但是,while 循环没有中断。这是代码:

import java.util.Scanner;
public class exam001 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int marks;
        while(true) {
            System.out.println("This is a gade checker program");
            System.out.println("Enter the marks from 0 to 100: ");
            System.out.println("Enter the marks: ");
            marks = scanner.nextInt();
            int grade = marks / 10;
            if (marks > 100) {
                System.out.println("Please enter the marks between the limit assigned");
            }
            else {
                switch(grade) {
                case 10:
                case 9:
                    System.out.println("Your grade is A");
                    break;
                case 8:
                case 7:
                    System.out.println("Your grade is B");
                    break;
                case 6:
                    System.out.println("Your grade is C");
                    break;
                case 5:
                case 4:
                    System.out.println("Your grade is D");
                    break;
                    
                default:
                    System.out.println("Your grade is E");
                    break;
                }
            }
        }
    }
}

我不知道,为什么中断功能在这个循环中不起作用..请帮帮我..

标签: javaloops

解决方案


使用标签breakwhile代替switch

loop:
while(true) {
    // ...
    // later:
    switch (..) {
        case ..:
            break loop;
    } 
}

有关详细信息,请参阅本教程:https ://docs.oracle.com/javase/tutorial/java/nutsandbolts/branch.html


推荐阅读