Szintaxis:
kapcsoló (változó vagy kifejezés)esetérték-1:
1. nyilatkozat… N
szünet;
esetérték-2:
1. nyilatkozat… N
szünet;
.
.
.
n érték:
1. nyilatkozat… N
szünet;
alapértelmezett:
1. nyilatkozat… N
Itt bármilyen változót vagy kifejezést használhat a kapcsoló része, amely illeszkedik a ügy érték. "szünet'nyilatkozat és'alapértelmezett'rész nem kötelező a a kapcsolótáska nyilatkozat. De ha a 'szünet' utasítás bármelyik vagy az összes esetében el van hagyva ügy utasításokat, akkor a következő esetértéket vagy az összes esetértéket a megadott értékkel ellenőrizzük a kapcsoló rész. Ha egyik sem ügy érték megegyezik a kapcsoló értéket, akkor a alapértelmezett rész végrehajtásra kerül. Hogyan a kapcsolótáska utasítás az opcionális részekkel és azok nélkül is, az alábbiakban különböző példák segítségével mutatjuk be.
1. példa: A switch-case utasítás használata törés és alapértelmezés nélkül
Az alábbi példa bemutatja, hogyan működik a switch-case utasítás, ha nem szünet és alapértelmezett állításokat használnak. A karakterláncadatokat bevitelnek tekintjük, és a változóban tároljuk, ID, és a ID minden eset értékével ellenőrizni fogjuk. Nem csak azt az üzenetet fogja kinyomtatni, ahol az esetérték megegyezik az azonosító értékével, hanem a maradék eset szakasz összes üzenetét is kinyomtatja, mert nem szünet utasítás használatos. Ha egyetlen eset értéke sem egyezik a ID értéket, akkor nem nyomtat üzenetet, mert nem alapértelmezett szakasz használatos a kódban.
// Scanner csomag importálásaimport java.haszn.Scanner;
public class switch1
public static void main (String [] érvel)
// Hozzon létre egy Szkenner objektumot
Szkenner bemenet = új Szkenner (Rendszer.ban ben);
Rendszer.ki.print ("Írja be az azonosítóját:");
// Karaktersorozat-adatok átvétele a felhasználótól
Karakterlánc azonosító = bemenet.következő();
// Váltás kifejezés
kapcsoló (ID)
// Esetnyilatkozat-1
"0111786" eset:
Rendszer.ki.println ("A köteged 24");
// Esetnyilatkozat-2
"0111234" eset:
Rendszer.ki.println ("A köteged 20");
// Esetnyilatkozat-3
"0111923" eset:
Rendszer.ki.println ("A köteged 37");
// Zárja be a szkenner objektumot
bemenet.Bezárás();
Kimenet:
A következő kimenet akkor jelenik meg, ha a bemeneti érték megegyezik az első esetértékkel a szkript végrehajtása után. Az utolsó két üzenet itt van kinyomtatva az szünet nyilatkozat.
Amikor a bemeneti érték megegyezik a második esetértékkel, akkor a következő kimenet jelenik meg.
Ha a bemeneti érték nem egyezik semmilyen esetértékkel, akkor a kihagyáshoz nem jelenik meg kimenet alapértelmezett szakasz.
2. példa: Váltás-eset utasítás használata alapértelmezett szekcióval
Az alapértelmezett szakasz elengedhetetlen ahhoz, hogy a kapcsolótáska-blokk olyan üzenetet nyomtasson a felhasználó számára, hogy nem található egyezés. A következő példa az alapértelmezett szakasz használatát mutatja a kapcsolótáska blokkban. Itt a szám értékét a switch-case utasítás minden egyes esetértékével ellenőrizzük, és nem található egyezés, majd a alapértelmezett szakasz kinyomtatásra kerül.
public class switch2public static void main (String [] érvel)
int szám = 380;
kapcsoló (szám)
// Esetnyilatkozat-1
440. eset:
Rendszer.ki.println ("Ön az A csoportba van kiválasztva");
// Esetnyilatkozat-2
500. eset:
Rendszer.ki.println ("Ön kiválasztva a B csoportba");
// Esetnyilatkozat-3
890. eset:
Rendszer.ki.println ("Ön kiválasztva a C csoportba");
// Az alapértelmezett utasítás végrehajtása, ha minden eset hamis értéket ad vissza
alapértelmezett:
Rendszer.ki.println ("Sajnáljuk, hogy nincs kiválasztva");
Kimenet:
A következő kimenet jelenik meg a kód végrehajtása után. A kód szerint a szám változó egyetlen esetnek sem felel meg. Tehát a alapértelmezett szakasz itt van kinyomtatva.
3. példa: Az alapértelmezett és a megszakítással rendelkező switch-case utasítás használata
A következő példa egy switch-case utasítás használatát mutatja be az alapértelmezett szakasz és break mondattal. Itt a kurzus kódját a felhasználó bemenetként veszi fel, és ezt minden esetértéknél ellenőrizni kell. Ha bármilyen egyezés létezik, akkor az egyező eset szakasz utasításai végrehajtásra kerülnek, és a program leáll a kapcsoló esetblokkból egy szünet nyilatkozat. Ha nincs egyezés, akkor az alapértelmezett szakasz utasításai kerülnek végrehajtásra.
// Scanner csomag importálásaimport java.haszn.Scanner;
public class switch3
public static void main (String [] érvel)
// Hozzon létre egy Szkenner objektumot
Szkenner bemenet = új Szkenner (Rendszer.ban ben);
Rendszer.ki.print ("Írja be a tanfolyam kódját:");
// Karaktersorozat-adatok átvétele a felhasználótól
Karaktersorozat = bemenet.következő();
kapcsoló (kód)
// Esetnyilatkozat-1
"CSE-105" eset:
Rendszer.ki.println ("Tanfolyam neve: Java programozás");
Rendszer.ki.println ("Hitelóra: 2");
Rendszer.ki.println ("Félév: 2");
szünet;
// Esetnyilatkozat-2
"CSE-207" ügy:
Rendszer.ki.println ("Tanfolyam neve: Adatszerkezet");
Rendszer.ki.println ("Hitelóra: 2");
Rendszer.ki.println ("Félév: 4");
szünet;
// Esetnyilatkozat-3
"CSE-402" ügy:
Rendszer.ki.println ("Tanfolyam neve: Mesterséges intelligencia");
Rendszer.ki.println ("Hitelóra: 3");
Rendszer.ki.println ("Félév: 10");
szünet;
// Az alapértelmezett utasítás végrehajtása, ha minden eset hamis értéket ad vissza
alapértelmezett:
Rendszer.ki.println ("Érvénytelen tanfolyamkód");
// Zárja be a szkenner objektumot
bemenet.Bezárás();
Kimenet:
A kód végrehajtása után a tanfolyam kódját kéri a felhasználótól. Itt, CSE-105 az első esetértékkel egyező bemenetnek számít. Tehát a kurzus információinak részleteit kinyomtatják, és a többi esetrészeket kihagyják az a használatához szünet nyilatkozat.
Következő, CSE-402 az utolsó esetértéknek megfelelő bevitelnek számít, és a megfelelő tanfolyamrészletek kinyomtatásra kerülnek.
Következő, CSE-101 bemenetnek számít, amely nem felel meg egyetlen eset értékének sem, és kinyomtatja az alapértelmezett szakasz üzenetét.
Következtetés:
A switch-case utasítás használata sok esetben hatékony, ha az if-else-if utasítást használja bizonyos problémák megoldására. A switch-case utasítás fogalmát és használatát ebben az oktatóanyagban megfelelően elmagyarázzuk, hogy a Java felhasználók könnyebben alkalmazhassák azt a kódjukban a követelmények alapján.