Maison >Java >javaDidacticiel >L'instruction Switch de Java peut-elle gérer des plages de valeurs ?
L'instruction Switch de Java peut-elle utiliser des plages de valeurs dans chaque cas ?
En Java, une instruction switch évalue une valeur unique par rapport à un ensemble de cas étiquettes. Toutefois, les étiquettes de cas ne peuvent contenir que des valeurs individuelles, pas des plages. Cela peut vous amener à vous demander si un tel comportement est possible, en vous inspirant de langages comme Objective C.
Approche de Java en matière de gestion des plages
Contrairement à Objective C, Java ne prend en charge de manière native les plages de valeurs dans les instructions switch case. Cela signifie que l'extrait de code que vous avez fourni entraînera une erreur de compilation.
Au lieu de cela, Java propose une solution de contournement utilisant des comparaisons logiques. Vous pouvez définir une méthode d'assistance telle que « isBetween » pour déterminer si une valeur se situe dans une plage :
public static boolean isBetween(int x, int lower, int upper) { return lower <= x && x <= upper; }
En utilisant cette méthode, vous pouvez réécrire votre instruction switch en utilisant des constructions if-else if :
if (isBetween(num, 1, 5)) { System.out.println("testing case 1 to 5"); } else if (isBetween(num, 6, 10)) { System.out.println("testing case 6 to 10"); }
En utilisant cette approche, vous pouvez obtenir la fonctionnalité des plages de valeurs dans les cas de commutation. Bien qu'elle ne soit pas aussi concise que la syntaxe d'Objective C, elle reste une solution fiable au sein de Java.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!