logo

Javaスイッチステートメント

ジャワ switch ステートメント 複数の条件から 1 つのステートメントを実行します。まるで もし、そうでなければ、もし ラダーステートメント。 switch ステートメントは、byte、short、int、long、enum 型、String、および Byte、Short、Int、Long などの一部のラッパー型で機能します。 Java 7以降、次を使用できます 文字列 switch ステートメント内で。

つまり、switch ステートメントは、複数の値に対して変数の等価性をテストします。

留意事項

  • あり得る 1 つまたは N 個のケース値 スイッチ式の場合。
  • case 値は switch 式タイプのみである必要があります。ケースの値は次のとおりである必要があります リテラルまたは定数 。それは許可されません 変数
  • 大文字と小文字の値は次のとおりである必要があります。 個性的 。値が重複している場合は、コンパイル時エラーが発生します。
  • Java スイッチ式は次のようにする必要があります。 byte、short、int、long (Wrapper 型を含む)、 列挙型 と文字列
  • 各 case ステートメントには、 ブレークステートメント これはオプションです。制御が及ぶと、 ブレークステートメント を指定すると、switch 式の後にコントロールがジャンプします。 Break ステートメントが見つからない場合は、次のケースが実行されます。
  • case の値には、 デフォルトのラベル これはオプションです。

構文:

 switch(expression){ case value1: //code to be executed; break; //optional case value2: //code to be executed; break; //optional ...... default: code to be executed if all cases are not matched; } 

Switch文のフローチャート

Linuxコマンドのディレクトリ
Javaのswitch文の流れ

例:

SwitchExample.java

 public class SwitchExample { public static void main(String[] args) { //Declaring a variable for switch expression int number=20; //Switch expression switch(number){ //Case statements case 10: System.out.println('10'); break; case 20: System.out.println('20'); break; case 30: System.out.println('30'); break; //Default case statement default:System.out.println('Not in 10, 20 or 30'); } } } 
今すぐテストしてください

出力:

 20 

月の検索例:

SwitchMonthExample.javaHTML

 //Java Program to demonstrate the example of Switch statement //where we are printing month name for the given number public class SwitchMonthExample { public static void main(String[] args) { //Specifying month number int month=7; String monthString=''; //Switch statement switch(month){ //case statements within the switch block case 1: monthString='1 - January'; break; case 2: monthString='2 - February'; break; case 3: monthString='3 - March'; break; case 4: monthString='4 - April'; break; case 5: monthString='5 - May'; break; case 6: monthString='6 - June'; break; case 7: monthString='7 - July'; break; case 8: monthString='8 - August'; break; case 9: monthString='9 - September'; break; case 10: monthString='10 - October'; break; case 11: monthString='11 - November'; break; case 12: monthString='12 - December'; break; default:System.out.println('Invalid Month!'); } //Printing month of the given number System.out.println(monthString); } } 
今すぐテストしてください

出力:

 7 - July 

母音か子音をチェックするプログラム:

文字が A、E、I、O、または U の場合は母音、それ以外の場合は子音です。大文字と小文字は区別されません。

Linuxのキーボードショートカット

SwitchVowelExample.java

ターミナルカリLinux
 public class SwitchVowelExample { public static void main(String[] args) { char ch='O'; switch(ch) { case 'a': System.out.println('Vowel'); break; case 'e': System.out.println('Vowel'); break; case 'i': System.out.println('Vowel'); break; case 'o': System.out.println('Vowel'); break; case 'u': System.out.println('Vowel'); break; case 'A': System.out.println('Vowel'); break; case 'E': System.out.println('Vowel'); break; case 'I': System.out.println('Vowel'); break; case 'O': System.out.println('Vowel'); break; case 'U': System.out.println('Vowel'); break; default: System.out.println('Consonant'); } } } 

出力:

 Vowel 

Java Switch ステートメントはフォールスルーです

Java switch ステートメントはフォールスルーです。これは、break ステートメントが存在しない場合、最初の一致の後にすべてのステートメントが実行されることを意味します。

例:

SwitchExample2.java

 //Java Switch Example where we are omitting the //break statement public class SwitchExample2 { public static void main(String[] args) { int number=20; //switch expression with int value switch(number){ //switch cases without break statements case 10: System.out.println('10'); case 20: System.out.println('20'); case 30: System.out.println('30'); default:System.out.println('Not in 10, 20 or 30'); } } } 
今すぐテストしてください

出力:

 20 30 Not in 10, 20 or 30 

文字列を含む Java Switch ステートメント

Java では、Java SE 7 以降、switch 式で文字列を使用できるようになりました。case ステートメントは文字列リテラルである必要があります。

例:

SwitchStringExample.java

ベッドページのようなサイト
 //Java Program to demonstrate the use of Java Switch //statement with String public class SwitchStringExample { public static void main(String[] args) { //Declaring String variable String levelString='Expert'; int level=0; //Using String in Switch expression switch(levelString){ //Using String Literal in Switch case case 'Beginner': level=1; break; case 'Intermediate': level=2; break; case 'Expert': level=3; break; default: level=0; break; } System.out.println('Your Level is: '+level); } } 
今すぐテストしてください

出力:

 Your Level is: 3 

Java ネストされた Switch ステートメント

Java では、switch ステートメントを他の switch ステートメント内で使用できます。これはネストされた switch ステートメントとして知られています。

例:

NestedSwitchExample.java

 //Java Program to demonstrate the use of Java Nested Switch public class NestedSwitchExample { public static void main(String args[]) { //C - CSE, E - ECE, M - Mechanical char branch = 'C'; int collegeYear = 4; switch( collegeYear ) { case 1: System.out.println('English, Maths, Science'); break; case 2: switch( branch ) { case 'C': System.out.println('Operating System, Java, Data Structure'); break; case 'E': System.out.println('Micro processors, Logic switching theory'); break; case 'M': System.out.println('Drawing, Manufacturing Machines'); break; } break; case 3: switch( branch ) { case 'C': System.out.println('Computer Organization, MultiMedia'); break; case 'E': System.out.println('Fundamentals of Logic Design, Microelectronics'); break; case 'M': System.out.println('Internal Combustion Engines, Mechanical Vibration'); break; } break; case 4: switch( branch ) { case 'C': System.out.println('Data Communication and Networks, MultiMedia'); break; case 'E': System.out.println('Embedded System, Image Processing'); break; case 'M': System.out.println('Production Technology, Thermal Engineering'); break; } break; } } } 
今すぐテストしてください

出力:

警察次長
 Data Communication and Networks, MultiMedia 

Switch ステートメントの Java Enum

Java では、switch ステートメントで enum を使用できます。 Java enum は定数のグループを表すクラスです。 (最終変数などの不変)。キーワード enum を使用し、定数を中括弧内にカンマで区切って入れます。

例:

JavaSwitchEnumExample.java

 //Java Program to demonstrate the use of Enum //in switch statement public class JavaSwitchEnumExample { public enum Day { Sun, Mon, Tue, Wed, Thu, Fri, Sat } public static void main(String args[]) { Day[] DayNow = Day.values(); for (Day Now : DayNow) { switch (Now) { case Sun: System.out.println('Sunday'); break; case Mon: System.out.println('Monday'); break; case Tue: System.out.println('Tuesday'); break; case Wed: System.out.println('Wednesday'); break; case Thu: System.out.println('Thursday'); break; case Fri: System.out.println('Friday'); break; case Sat: System.out.println('Saturday'); break; } } } } 
今すぐテストしてください

出力:

 Sunday Monday Twesday Wednesday Thursday Friday Saturday 

Switch ステートメントの Java ラッパー

Java では次の 4 つを使用できます。 ラッパークラス : switch ステートメント内の Byte、Short、Integer、および Long。

例:

WrapperInSwitchCaseExample.java

 //Java Program to demonstrate the use of Wrapper class //in switch statement public class WrapperInSwitchCaseExample { public static void main(String args[]) { Integer age = 18; switch (age) { case (16): System.out.println('You are under 18.'); break; case (18): System.out.println('You are eligible for vote.'); break; case (65): System.out.println('You are senior citizen.'); break; default: System.out.println('Please give the valid age.'); break; } } } 
今すぐテストしてください

出力:

 You are eligible for vote.