'how do I get back to an outer switch if I am inside an inner switch?

I am trying to program a menu for my calculator. I do not know how to get out of my inner loop and get back to my outer loop once I have executed the inner loop. I have to finish the whole case of the inner loop before I can get back to the outer loop. Is there a way that I can go back and forth of the nested switch whenever I want to? and when I execute my outer switch case 3, it executes infinitely. Maybe because it's inside a loop.

import java.util.Scanner;

public class MainInterface {
    static Scanner input = new Scanner(System.in);
    
    static boolean hasRun = false;
     public static void main(String args[])
     {
         
         Calculator Mycal = new SimpleCalculator();
         ScientificCalculator Mycal2 = new ScientificCalculator();
         
         mainMenu();
         int choice = input.nextInt();
         
         do {
         
         System.out.println("\n");
        
         switch(choice) // outer switch
         {
         case 1: simpleCalculatorMenu();
                
                int choice2 = input.nextInt();
                
                    switch(choice2)  // inner switch
                        {
                        case 1: //ADDITION
                            
                        System.out.println("ADDITION");
                        System.out.println("\n");
                        System.out.println("Enter first number: ");
                        float x = input.nextFloat();
                        System.out.println("Enter second number: ");
                        float y = input.nextFloat();
                        System.out.println("\n");
                        System.out.println("The sum of " + x + " " + y + " is " + Mycal.add(x, y));
                        System.out.println("\n");
                        System.out.println("Would you like to return to the main menu?");
                        System.out.println("\n");
                        System.out.println("Enter 1. to return 2. to exit");
                        choice = input.nextInt();
                        break;
                        }
                
                break; 
         
         case 2: System.out.println("SCIENTIFIC CALCULATOR");
                 System.out.println("\n");
                 System.out.println("1. power(x, pow) 2. sin(xDeg) 3. cos(xDeg) 4. tan(xDeg)");
                 System.out.println("\n");
                 System.out.println("5. pi() 6. fact(x) ");
                int choice3 = input.nextInt();
                
                         switch(choice3) {
                         
                         case 1:
                            System.out.println("POWER");
                            System.out.println("\n");
                            System.out.println("Enter first number: ");
                            double x = input.nextDouble();
                            System.out.println("Enter second number: ");
                            double y = input.nextDouble();
                            System.out.println("\n");
                            System.out.println("The power of " + x + " to the power of " + y + " is " + Mycal2.power(x, y));
                            System.out.println("\n");
                            System.out.println("Would you like to return to the main menu?");
                            System.out.println("\n");
                            System.out.println("Enter 1. to return 2. to exit");
                            choice = input.nextInt();
                            break;
                            
                         case 2: 
                         }
            break;
            
         case 3: mainMenu();            
         
         break;
         
                
         case 4: System.exit(choice);
                break;
         }
         } while(choice != 0);
        
         }
    
     
     
     
     
     public static void simpleCalculatorMenu () {
         
         System.out.println("SIMPLE CALCULATOR");
            System.out.println("\n");
            System.out.println("1. Addition 2. Subtraction 3. Multiplication 4. Division");
            System.out.println("\n");
            System.out.println("5. Squared Root 6. Squared 7. Cube 8. Discount ");
     }
     
     public static void mainMenu () {
         
         System.out.println("What calculator do you want to use?");
         System.out.println("\n");
         System.out.println("1. Simple Calculator \t 2. Scientific Calculator");
    }
}


Solution 1:[1]

by adding label you can try like this

        OUTER:
        switch(condition1) {
            case x:
                switch(condition2) {
                    case y:
                        System.out.println("hello");
                        break OUTER;
                }
        }

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 VijayA76R