Tablica usporedbe:
Osnova za usporedbu | pauza | nastaviti |
---|---|---|
Zadatak | Završava izvršenje preostale iteracije petlje. | Završava samo trenutnu iteraciju petlje. |
Kontrola nakon prekida / nastavka | 'break' nastavlja kontrolu programa do kraja petlje koja obuhvaća taj 'break'. | 'continue' nastavlja kontrolu programa na sljedeću iteraciju petlje koja obuhvaća 'continue'. |
uzroci | To uzrokuje rani prekid petlje. | To uzrokuje rano izvršenje sljedeće iteracije. |
nastavljanje | 'break' zaustavlja nastavak petlje. | 'continue' ne zaustavlja nastavak petlje, samo zaustavlja trenutnu iteraciju. |
Druge namjene | 'break' može se koristiti s 'switch', 'label'. | 'continue' ne može se izvesti s 'switch' i 'labelama'. |
Definicija prijeloma
U C ++ break ima samo dvije uporabe tj. Prvo se koristi za “okončanje izvršenja slučaja u switch izrazu”. Drugo, "prekinite petlju i nastavite kontrolu na sljedeću izjavu koja slijedi nakon petlje". No, u Java breaku ima tri prve uporabe, završava slučaj u prekidaču, drugi za prekid kruga i treći, kao što je ranije spomenuto, da Java ne daje 'goto' izjavu, ali, prošireni oblik pauze može se koristiti u mjesto 'goto'.
Pogledajmo, svaka upotreba 'break' u detaljima.
Prvo upotrijebite za prekid izvršavanja prekidača slučaja. Prekid u prekidaču utječe samo na taj prekidač koji ga okružuje, ne utječe na petlju koja okružuje prekidač.
// U kontekstu za C ++. // korištenje prekida u kontekstu C ++. switch (cjelobrojni izraz) {case 1: ..... ..... break; slučaj 2: ..... ..... pauza; slučaj 3: ..... ..... pauza; zadano: ....... ....... }
Druga uporaba, prisilno okončavanje petlje i nastavak na sljedećoj izjavi petlje. Čim se u petlji nađe prekidna naredba, ta se petlja odmah prekida bez izvođenja preostalog koda u tijelu te petlje, a programska kontrola doseže sljedeći izraz napisan nakon te petlje.
// koristi break za izlaz iz petlje u kontekstu Java klase main_class {public static void main (string args []) {for (int i = 0; i <100; i ++) {system.out.println ("i:" + i); if (i == 10) probiti; // kao uvjet unutar 'if' satistfies kontrola dolazi iz 'for' petlje. } system.out.println ("Loop breaks ovdje"); }}
break samo neka program izađe iz petlje koja ga zatvara. Ako se prekid koristi s ugniježđenom petljom, ona izbija samo najdublju petlju i ne utječe na vanjsku petlju.
Treći koristite, koristeći pauzu kao oblik goto. Java koristi break kao oblik goto bez njegova problema. Budući da goto pruža nestrukturirano grananje koje je teško razumjeti, a goto zabranjuje optimizaciju kompajlera, Java koristi prošireni oblik prekida koji je sličan kao goto i pomaže izlaziti više od jednog bloka odjednom i nastaviti kontrolu programa na kraj označenog bloka, koji se spominje s izjavom o prekidu.
Deklaracija:
oznaka za prekid;
Ovdje "oznaka" je naziv određenog bloka koda ili identifikatora u Javi, a taj označeni blok mora sadržavati prekidnu izjavu. Oznaka break izjava koristi se za izlaz iz skupa ugniježđene petlje. Kako se susreće označena prekidna naredba, kontrola napušta označeni blok koji se spominje s break naredbom.
Da ga vidimo praktički.
// koristi break kao oblik goto u kontekstu Java klase main_class {public static void main (string args []) {boolean t = true; prvi {drugi {treći {system.out.println ("ovaj treći blok"); ako (t) prvo prekinete; } system.out.println ("ovaj drugi blok"); } system.out.println ("ovaj prvi blok"); } system.out.println ("ovaj glavni blok"); }} // izlaz: ovo je treći blok, to je glavni blok
U ovom kodu, kad kontrola stigne do trećeg bloka, izvršava se njegova izjava o ispisu i nakon toga kontrola nastavlja na 'if' izjavu, a kako je zadovoljena, izvršava se break izraz s oznakom. Oznaka priložena s prekidom je prva, tako da se kontrola nastavlja na izjavu napisanu nakon kraja bloka, tj. U glavnom bloku koji je ispisni izraz i koji se izvršava.
Definicija nastavka
Budući da prekid završava preostalu iteraciju petlje i omogućuje da kontrola izađe iz petlje, ovdje nastavite s radovima, djelujući poput prekida. Izjava continue zaustavlja izvršenje preostalog koda u petlji za tu trenutnu iteraciju i nastavlja kontrolu na sljedeću iteraciju te petlje. Izjava nastavlja preskakanje koda za trenutnu iteraciju i prosljeđuje kontrolu sljedećoj iteraciji petlje.
Razumimo to s primjerom.
// korištenje nastavka u kontekstu na C ++. // ispisuje parni broj do 100. klasa main_class {javna statična nevažeća glavna (string args []) {za (int i = 0; i <100; i ++) {ako (i% 2! = 0) nastavi; // nastavi nastaviti s kontrolom na sljedeću iteraciju u za loop system.out.println ("i:" + i); }}}
U gore navedenom programu, ako je 'if' izjava zadovoljna tada, nastavlja se izvršavanje naredbe, koja ne dopušta da se naredni ispisni izraz izvrši i nastavi kontrolu na sljedeću iteraciju 'for' petlje. Ako je i = 1 tada je uvjet 'ako' zadovoljen i nastavlja se izvršavati, bez izvođenja naredbe ispisa za neparnu vrijednost 'i', a kontrola se nastavlja na sljedeću iteraciju petlje 'za i = 2'. Ako je i = 2, tada 'if' izjava nije zadovoljena; naredba continue ne izvršava i ispis ispisuje vrijednost "i" koja je parna.
Ključne razlike između prekida i nastavka
- U biti, ključna riječ break prekida ostatak preostalih iteracija petlje. S druge strane, ključna riječ continue nastavlja samo trenutnu iteraciju petlje.
- Nakon što se izvrši ključna riječ pauze, kontrola izlaza programa iz petlje i nastavlja se do sljedećeg izraza nakon petlje. U slučaju ključne riječi za nastavak, kontrola programa se nastavlja na sljedeću iteraciju petlje.
- Kao što je navedeno u prethodnom koraku, zaključuje se da se nakon izvršenja kontrole prekida izlaza programa iz petlje jasno razumije da prekid uzrokuje rani prekid bilo koje petlje. S druge strane, nastavite samo prekidati trenutnu iteraciju i nastaviti do sljedeće iteracije petlje, tada možemo reći da nastavak uzrokuje rano izvođenje sljedeće iteracije petlje.
- Ključna riječ break prekida sve preostale iteracije nakon izvršenja pa možemo reći da zaustavlja nastavak petlje, dok ključna riječ continue nastavlja s izvršavanjem petlje.
- Ključna riječ break može se koristiti zajedno s "switch" izjavama kao i "label", dok se ključna riječ continue ne može koristiti s "switch" i "label".
Zaključak:
Oba izraza break i continue su izraz za skok koji prenosi kontrolu na drugi dio programa. Kada je izjava o prekidu neka kontrola iziđe iz petlje, naredba continue dopušta kontrolu na sljedeću iteraciju te petlje.