Teachnique
      CourseRoadmaps
      Login

      OverviewHistoryFeaturesJava 8 - New Featuresvs C++Virtual Machine(JVM)JDK vs JRE vs JVMHello World ProgramEnvironment SetupBasic SyntaxVariable TypesData TypesType CastingUnicode SystemBasic OperatorsCommentsStreamsNew Date-Time API

      Loop ControlDecision Makingif-else Statementswitch statementfor loopfor each Loopwhile Loopdo...while Loopbreak Statementcontinue Statement

      OOPs (Object-Oriented Programming) ConceptsObject and ClassesClass AttributesClass MethodsMethodsVariable ScopesConstructorsAccess ModifiersInheritanceAggregationPolymorphismOverridingMethod OverloadingDynamic BindingStatic BindingInstance Initializer BlockAbstractionEncapsulationInterfacesPackagesInner classesStatic ClassesAnonymous ClassesSingleton ClassWrapper ClassesEnum Class

      Number ClassBoolean classCharacter ClassArraysMath Class

      File ClassCreating FilesWrite To FilesReading FileDelete FilesDirectory OperationsFiles and I/O

      ExceptionsTry Catch BlockTry with ResourcesMultiple Catch BlocksNested Try BlockFinally BlockThrows and Throw | Throw an ExceptionException PropagationBuilt-in ExceptionsCustom Exception

      MultithreadingThread Life CycleCreating a ThreadStarting a ThreadJoining ThreadsNaming a Thread with ExamplesScheduling Threads with ExamplesThread PoolsMain ThreadThread PriorityDaemon ThreadThreadGroup ClassJVM Shutdown Hook

      Thread SynchronizationBlock SynchronizationStatic SynchronizationInter Thread CommunicationThread DeadlockInterrupting ThreadThread ControlReentrant Monitor

      NetworkingSocket ProgrammingURL ProcessingURL ClassURLConnection ClassHttpURLConnection ClassSocket Class with ExamplesGenerics

      Collections FrameworkCollection Interface

      List InterfaceArrayList Class

      Queue InterfaceArrayDeque Class

      Map InterfaceSortedMap Interface

      Set InterfaceSortedSet Interface

      Data Structures Enumeration Interface BitSet Class

      How to Use Iterator?How to Use Comparator?How to Use Comparable?

      RecursionRegular ExpressionsSerializationString ClassJava Arrays - Class

      Feedback

      Submit request if you have any questions.

      Course
      switch statement

      Java Tutorial

      This Java tutorial is tailored for newcomers, offering a journey from basic principles to complex Java programming techniques. Completing this tutorial equips you with a solid understanding of Java, preparing you for advanced learning. You'll emerge ready to tackle the challenges of becoming a top-tier software engineer, with the skills to innovate and excel in the vast world of software development.

      switch Statement

      Java switch Statement

      The Java switch statement allows a variable to be tested for equality against a list of values. Each value is called a case, and the variable being switched on is checked for each case.
      The switch statement can be used when multiple if-else statements are required. It can have multiple code blocks along with the case values and executes one of many code blocks based on the matches case value.

      Syntax

      The syntax of Java switch statement is
      switch(expression) {
      case value :
      // Statements
      break; // optional
      case value :
      // Statements
      break; // optional
      // You can have any number of case statements.
      default : // Optional
      // Statements
      }

      Rules

      The following rules apply to a switch statement
      • The variable used in a switch statement can only be integers, convertable integers (byte, short, char), strings and enums.
      • You can have any number of case statements within a switch. Each case is followed by the value to be compared to and a colon.
      • The value for a case must be the same data type as the variable in the switch and it must be a constant or a literal.
      • When the variable being switched on is equal to a case, the statements following that case will execute until a break statement is reached.
      • When a break statement is reached, the switch terminates, and the flow of control jumps to the next line following the switch statement.
      • Not every case needs to contain a break. If no break appears, the flow of control will fall through to subsequent cases until a break is reached.
      • A switch statement can have an optional default case, which must appear at the end of the switch. The default case can be used for performing a task when none of the cases is true. No break is needed in the default case.

      Flow Diagram

      

      Examples

      Example 1

      In this example, we're showing use of switch statement where cases are based on a char. We've created a variable grade. Based on value of grade, each case is checked. if a case is satisfied and break statement is present then following cases are not checked.
      public class Test {
      
      public static void main(String args[]) {
      char grade = 'C';
      
      switch(grade) {
      case 'A' :
      System.out.println("Excellent!");
      break;
      case 'B' :
      case 'C' :
      System.out.println("Well done");
      break;
      case 'D' :
      System.out.println("You passed");
      case 'F' :
      System.out.println("Better try again");
      break;
      default :
      System.out.println("Invalid grade");
      }
      System.out.println("Your grade is " + grade);
      }
      }
      Output
      Compile and run the above program using various command line arguments. This will produce the following result
      Well done
      Your grade is C

      Example 2

      In this example, we're showing use of switch statement where cases are based on a int. We've created a variable grade. Based on value of grade, each case is checked. if a case is satisfied and break statement is present then following cases are not checked.
      public class Test {
      
      public static void main(String args[]) {
      int grade = 3;
      
      switch(grade) {
      case 1 :
      System.out.println("Excellent!");
      break;
      case 2 :
      case 3 :
      System.out.println("Well done");
      break;
      case 4 :
      System.out.println("You passed");
      case 5 :
      System.out.println("Better try again");
      break;
      default :
      System.out.println("Invalid grade");
      }
      System.out.println("Your grade is " + grade);
      }
      }

      Output

      Compile and run the above program using various command line arguments. This will produce the following result
      Well done
      Your grade is 3

      Example 3

      In this example, we're showing use of switch statement where cases are based on a String. We've created a variable grade. Based on value of grade, each case is checked. if a case is satisfied and break statement is present then following cases are not checked.
      public class Test {
      
      public static void main(String args[]) {
      String grade = "C";
      
      switch(grade) {
      case "A" :
      System.out.println("Excellent!");
      break;
      case "B" :
      case "C" :
      System.out.println("Well done");
      break;
      case "D" :
      System.out.println("You passed");
      case "F" :
      System.out.println("Better try again");
      break;
      default :
      System.out.println("Invalid grade");
      }
      System.out.println("Your grade is " + grade);
      }
      }

      Output

      Compile and run the above program using various command line arguments. This will produce the following result
      Well done
      Your grade is C

      The default Keyword

      The default keyword is used to specify a code block when no case value is matched. The default keyword is optional, but it should be used in the switch case statement.
      Print Page