Java で 1つの Switch Case ステートメントに複数の値を使用する
-
switch-case
ステートメントを使用する -
1つの
switch-case
ステートメントに 2つ以上の値を使用する -
矢印構文を使用して、1つの
switch-case
ステートメントに複数の値を使用する
この記事では、1つの switch-case
ステートメントに複数の値を使用する方法を学びます。
switch-case
ステートメントを使用する
Java を使用すると、プログラマーは、switch case ステートメントを使用することで、他のプログラミング言語と同様に、あまりにも多くの if-else
条件ステートメントを克服できます。 また、switch-case
ステートメントを使用しているときに、ユーザーが複数のケースに対して同じ操作を実行したい場合はどうすればよいでしょうか?
通常、ユーザーは次のようにできます。
class Test {
public static void main(String[] args) {
int num = 9;
switch (num % 4) {
case 1:
System.out.println("num is not divisible by 4.");
break;
case 2:
System.out.println("num is not divisible by 4.");
break;
case 3:
System.out.println("num is not divisible by 4.");
break;
case 0:
System.out.println("num is divisible by 4.");
break;
default:
System.out.println("num is not divisible by 4.");
}
}
}
上記の例では、switch-case
ステートメントを使用して、数値が 4 で割り切れるかどうかを確認しています。switch-case
ステートメントで num%4
条件を使用し、モジュロ演算に基づいて応答を出力します。 .
ユーザーは、モジュロ 1、2、および 3 に対して同じ文を出力していることがわかります: num is not divisible by 4
。
出力:
num is not divisible by 4.
1つの switch-case
ステートメントに 2つ以上の値を使用する
数値が 4 で割り切れるかどうかを判断するために、switch-case
ステートメントを使用して、上記の例の数十行のコードを記述しました。 単一の switch-case
ステートメントに複数の値を使用することで、そのコードをより明確で読みやすくすることができます。
以下の例では、ケース 1、2、および 3 に対して単一の switch-case
ステートメントを使用しました。ユーザーは、コードがより明確で読みやすく見え、それでも同じ出力が得られることがわかります。
コード例:
public class Test {
public static void main(String[] args) {
int num = 9;
switch (num % 4) {
case 1:
case 2:
case 3:
System.out.println("num is not divisible by 4.");
break;
case 0:
System.out.println("num is divisible by 4.");
break;
default:
System.out.println("num is not divisible by 4.");
}
}
}
出力:
num is not divisible by 4.
矢印構文を使用して、1つの switch-case
ステートメントに複数の値を使用する
Java 14 では、switch-case
ステートメントの新しい構文が導入されています。 ユーザーは、コンマを区切ることで単一の case
に複数の値を追加でき、ユーザーは実行コードを中かっこで囲む必要があります。
switch-case
ステートメントの矢印構文は次のとおりです。
case firstCase, secondCase,
thirdCase
-> {
// executable code
}
コード例:
public class Test {
public static void main(String[] args) {
int num = 9;
switch (num % 4) {
case 1,2,3 -> {
System.out.println("num is not divisible by 4.");
}
case 0->{
System.out.println("num is divisible by 4.");
}
default->{
System.out.println("num is not divisible by 4.");
}
}
}
}
上記の例では、数値が 4 で割り切れるかどうかを確認しながら、1、2、および 3 のケースに switch-case
ステートメントの新しい構文を使用しました。
出力:
num is not divisible by 4.
コード例: switch-case
を使用して特定の年の月の日数を返す
次の例では、switch-case
矢印構文を使用して、現在の月の日数を取得しています。 ユーザーは、yield
を使用して 1、3、5、7、8、10、および 12 ケースの 31 日と、4、6、9、および 11 ケースの 30 日を返していることがわかります。
public class Test {
public static void main(String[] args) {
int monthToCheck = 2;
int yearToCheck = 1968;
int days = switch (monthToCheck){case 4, 6, 9, 11 -> {yield 30;
}
case 1, 3, 5, 7, 8, 10, 12 ->{
yield 31;
}
case 2 ->{
if ((( monthToCheck % 4 == 0) &&
!( monthToCheck % 100 == 0))
|| ( monthToCheck % 400 == 0))
yield 29;
else
yield 28;
}
default ->{
System.out.println("Month is not valid.");
yield -1;
}
};
System.out.println("Number of Days in month " + monthToCheck + " is = " + days);
}
}
出力:
Number of Days in month 2 is = 28
この記事では、さまざまな例を通じて、単一の switch-case
ステートメントに複数の値を使用することを学びました。 また、複数の値を持つ switch-case
ステートメントを使用して日数を取得する実際の例を見てきました。
単一の switch-case
ステートメントに複数の値を使用することで、コードを明確にすることができます。