Sintakse:
slēdzis (mainīgais vai izteiksme)gadījuma vērtība-1:
1. paziņojums… N
pārtraukums;
gadījuma vērtība-2:
1. paziņojums… N
pārtraukums;
.
.
.
gadījuma vērtība n:
1. paziņojums… N
pārtraukums;
noklusējums:
1. paziņojums… N
Šeit jūs varat izmantot jebkuru mainīgo vai izteiksmi slēdzis daļa, kas tiks saskaņota ar gadījumā vērtība. "pārtraukums"paziņojums un"noklusējumsdaļa nav obligāta slēdža korpuss paziņojums, apgalvojums. Bet, jasalauzt paziņojums ir izlaists nevienam vai visiem gadījumā paziņojumus, tad nākamā gadījuma vērtība vai visas gadījumu vērtības tiks pārbaudītas ar definēto vērtību slēdzis daļa. Ja neviens no gadījumā vērtība sakrīt ar slēdzis vērtību, tad noklusējums daļa tiks izpildīta. Kā slēdža korpuss paziņojuma darbi ar un bez papildu daļām ir parādīti zemāk, izmantojot dažādus piemērus.
1. piemērs: Pārslēgšanas gadījuma paziņojuma izmantošana bez pārtraukuma un noklusējuma
Šis piemērs parāda, kā darbojas pārsūtīšanas gadījuma paziņojums, ja nē pārtraukums un noklusējums tiek izmantoti paziņojumi. Virknes dati tiks ņemti par ievadi un saglabāti mainīgajā, ID, un vērtība ID tiks pārbaudīta ar katra gadījuma vērtību. Tas ne tikai izdrukās ziņojumu, ja lietas vērtība atbilst ID vērtībai, bet arī izdrukās visus atlikušās lietas sadaļas ziņojumus, jo nē pārtraukums paziņojums tiek izmantots. Ja neviena gadījuma vērtība neatbilst ID vērtību, tad neviens ziņojums netiks drukāts, jo nē noklusējums sadaļa tiek izmantota kodā.
// Importēt skenera pakotniievest java.util.Skeneris;
publiskās klases slēdzis1
public static void main (String [] args)
// Izveidojiet skenera objektu
Skenera ievade = jauns skeneris (sistēma.in);
Sistēma.ārā.print ("Ievadiet savu ID:");
// Paņemiet virknes datus no lietotāja
Virknes ID = ievade.Nākamais();
// Pārslēgt izteiksmi
slēdzis (ID)
// Lietas izklāsts-1
korpuss "0111786":
Sistēma.ārā.println ("Jūsu partija ir 24");
// Lietas izklāsts-2
korpuss "0111234":
Sistēma.ārā.println ("Jūsu partija ir 20");
// Lietas izklāsts-3
korpuss "0111923":
Sistēma.ārā.println ("Jūsu partija ir 37");
// Aizveriet skenera objektu
ievade.aizvērt ();
Izeja:
Šī ievade parādīsies, ja ievades vērtība atbilst pirmā gadījuma vērtībai pēc skripta izpildes. Šeit tiek izdrukāti pēdējie divi ziņojumi, lai izlaistu pārtraukums paziņojums, apgalvojums.
Kad ievades vērtība sakrīt ar otrā gadījuma vērtību, parādīsies šāda izeja.
Ja ievades vērtība nesakrīt ar nevienu gadījumu vērtību, izlaišana netiks parādīta noklusējums sadaļā.
2. piemērs: Pārslēgšanas gadījumu paziņojuma izmantošana ar noklusējuma sadaļu
Noklusējums sadaļa ir būtiska, lai pārslēgšanas lietu bloķēšana izdrukātu lietotājam ziņojumu, ka atbilstība nav atrasta. Šis piemērs parāda noklusējuma sadaļas izmantošanu komutācijas bloka blokā. Šeit numura vērtība tiks pārbaudīta ar katra gadījuma vērtību switch-case paziņojumā, un atbilstība netiks atrasta, tad ziņojums noklusējums sadaļa tiks izdrukāta.
public class switch2public static void main (String [] args)
int skaitlis = 380;
slēdzis (numurs)
// Lietas izklāsts-1
440. gadījums:
Sistēma.ārā.println ("Jūs esat izvēlēts A grupai");
// Lietas izklāsts-2
500. gadījums:
Sistēma.ārā.println ("Jūs esat izvēlēts B grupai");
// Lietas izklāsts-3
lieta 890:
Sistēma.ārā.println ("Jūs esat izvēlēts C grupai");
// Izpildiet noklusējuma paziņojumu, ja visi gadījumi atgriež false
noklusējums:
Sistēma.ārā.println ("Atvainojiet, jūs neesat izvēlēts");
Izeja:
Pēc koda izpildes parādīsies šāda izeja. Saskaņā ar kodu vērtība, kas piešķirta numuru mainīgais neatbilst nevienai gadījuma vērtībai. Tātad, noklusējums sadaļa ir iespiesta šeit.
3. piemērs: Pārslēgšanas gadījuma paziņojuma izmantošana ar noklusējumu un pārtraukumu
Šajā piemērā ir parādīts, kā tiek lietots pārsūtīšanas gadījuma paziņojums ar noklusējuma sadaļu un pārtraukumiem. Kursa kods tiks ņemts par lietotāja ievadi, un tas tiks pārbaudīts ar katra gadījuma vērtību. Ja pastāv kāda atbilstība, tiks izpildīti atbilstošās lietas sadaļas paziņojumi, un programma tiks pārtraukta no pārslēgšanas lietu bloka, lai izmantotu pārtraukums paziņojums, apgalvojums. Ja atbilstība nepastāv, tiks izpildīti noklusējuma sadaļas paziņojumi.
// Importēt skenera pakotniievest java.util.Skeneris;
publiskās klases slēdzis3
public static void main (String [] args)
// Izveidojiet skenera objektu
Skenera ievade = jauns skeneris (sistēma.in);
Sistēma.ārā.print ("Ievadiet kursa kodu:");
// Paņemiet virknes datus no lietotāja
Virknes kods = ievade.Nākamais();
slēdzis (kods)
// Lietas izklāsts-1
lieta "CSE-105":
Sistēma.ārā.println ("Kursa nosaukums: Java programmēšana");
Sistēma.ārā.println ("Kredīta stunda: 2");
Sistēma.ārā.println ("Semestris: 2");
pārtraukums;
// Lietas izklāsts-2
lieta "CSE-207":
Sistēma.ārā.println ("Kursa nosaukums: datu struktūra");
Sistēma.ārā.println ("Kredīta stunda: 2");
Sistēma.ārā.println ("Semestris: 4");
pārtraukums;
// Lietas izklāsts-3
lieta "CSE-402":
Sistēma.ārā.println ("Kursa nosaukums: mākslīgais intelekts");
Sistēma.ārā.println ("Kredīta stunda: 3");
Sistēma.ārā.println ("Semestris: 10");
pārtraukums;
// Izpildiet noklusējuma paziņojumu, ja visi gadījumi atgriež false
noklusējums:
Sistēma.ārā.println ("Nederīgs kursa kods");
// Aizveriet skenera objektu
ievade.aizvērt ();
Izeja:
Pēc koda izpildīšanas tā no lietotāja prasīs kursa kodu. Šeit, PMP-105 tiek uzskatīts par ievadi, kas atbilst pirmā gadījuma vērtībai. Tātad informācija par kursa informāciju tiek izdrukāta, un citas lietas sadaļas tiek izlaistas, lai izmantotu a pārtraukums paziņojums, apgalvojums.
Nākamais, PMP-402 tiek uzskatīts par ievadi, kas atbilst pēdējā gadījuma vērtībai, un tiek izdrukāta attiecīgā kursa informācija.
Nākamais, PMP-101 tiek uzskatīts par ievadi, kas nesakrīt ar nevienu burta vērtību, un tiek izdrukāts noklusējuma sadaļas ziņojums.
Secinājums:
Pārslēgšanas gadījuma paziņojuma izmantošana daudzos gadījumos ir efektīva, tā vietā, lai noteiktu problēmu risināšanai izmantotu paziņojumu if-else-if. Šajā apmācībā ir atbilstoši izskaidrots switch-case paziņojuma jēdziens un izmantošana, lai palīdzētu Java lietotājiem to efektīvi pielietot savā kodā, pamatojoties uz prasībām.