Odporúčaná, 2024

Redakcia Choice

Rozdiel medzi prestávkou a pokračovaním

Obaja "break" a "continue" sú vyhlásenia "skoku", ktoré prenášajú kontrolu nad programom na inú časť programu. C + + podporuje štyri výpisy skoku, konkrétne "návrat", "goto", "break" a "pokračovať". Java podporuje tri skokové príkazy 'break' 'continue' a 'return'. Hlavný rozdiel medzi prerušením a pokračovaním je, že prestávka sa používa na okamžité ukončenie slučky, zatiaľ čo pokračujte v ukončení aktuálnej iterácie a opätovné spustenie ovládacieho prvku na ďalšiu opakovanie slučky. Pozrime sa na rozdiel medzi prestávkou a pokračujeme v kontexte C ++ a Java.

Porovnávacia tabuľka:

Základ pre porovnanieprestávkaďalej
úloha
Tým sa ukončí vykonanie zostávajúcej iterácie slučky.Ukončí iba aktuálnu iteráciu slučky.
Kontrola po prerušení / pokračovanie'break' pokračuje v ovládaní programu na koniec slučky, ktorá obklopuje túto 'prestávku'."pokračovať" pokračuje v ovládaní programu na ďalšiu iteráciu tejto slučky, ktorá obsahuje "pokračovať".
príčinySpôsobuje predčasné ukončenie cyklu.Spôsobuje skoré vykonanie ďalšej iterácie.
pokračovanie'break' zastaví pokračovanie slučky.'pokračovať' nezastaví pokračovanie slučky, zastaví iba aktuálnu iteráciu.
Iné spôsoby použitia"prestávka" môže byť použitá s "switch", "label"."pokračovať" nemožno vykonať pomocou prepínača a štítkov.

Definícia prerušenia

V C + + break má len dve použitia, tj najprv sa používa na "ukončenie vykonania prípadu v prepínači". Po druhé, "ukončenie cyklu a opätovné spustenie ovládacieho prvku na ďalšie vyhlásenie po smyčke". Ale v Java break má tri spôsoby použitia ako prvé, ukončuje prípad v prepínači, druhé ukončí uzavretie slučky a tretí, ako už bolo spomenuté, že Java neposkytuje vyhlásenie "goto", ale rozšírená prestávka môže byť použitá v miesto "goto".

Pozrime sa na to, každé použitie "break" podrobne.

Prvé použitie ukončíte vykonanie prípadu v prepínači. Prerušenie prepínača ovplyvňuje len spínač, ktorý ho obklopuje, nemá vplyv na slučku, ktorá obklopuje spínač.

 // V súvislosti s C ++. // pomocou prerušenia prepínača v kontexte C ++. prepínač (celočíselný výraz) {prípad 1: ..... ..... prestávka; prípad 2: ..... ..... prestávka; prípad 3: ..... ..... prestávka; predvolené: ....... .......} 

Druhé použitie, nútene ukončiť slučku a pokračovať v ďalšom vyhlásení o slučke. Akonáhle sa príkaz zlomu objaví vo vnútri slučky, táto slučka sa ihneď ukončí bez vykonania zostávajúceho kódu v tele tohto okruhu a programová kontrola sa dostane k ďalšiemu výpisu napísanému za touto slučkou.

 // používa prerušenie pre opustenie slučky v kontexte do triedy Java main_class {public static void main (reťazec args []) {pre (int i = 0; i <100; i ++) {system.out.println ("i: + i); ak (i ​​== 10) prerušenia; // pretože stav vnútri "ak" satitizuje ovládanie vychádza zo slučky "pre". } system.out.println ("Loop breaks here"); }} 

break len nechajte program opustiť slučku, ktorá ho obklopuje. Ak sa prestávka používa so vnorenou slučkou, vyruší sa iba vnútorná slučka a neovplyvní vonkajšiu slučku.

Tretie použitie, pomocou break ako forma goto. Java používa prestávku ako formu geto bez jej problému. Pretože goto poskytuje neštruktúrované rozvetvenie, ktoré je ťažké pochopiť a tiež zabraňuje optimalizácii kompilátorov, Java používa rozšírenú formu zlomu, ktorá je podobná ako goto a pomáha ukončiť viac ako jeden blok naraz a pokračovať v ovládaní programu na koniec označeného bloku, ktorý je uvedený v prehlásení o zlomení.

vyhlásenie:

 break label; 

Tu je "label" názov určitého bloku kódu alebo identifikátora v jazyku Java a tento označený blok musí priložiť príkaz break. Príkaz označený prerušenie sa používa na ukončenie série vnorenej slučky. Keď sa objaví príkaz označený prerušenie, kontrolná jednotka opustí označený blok, ktorý sa spomína s príkazom break.
Pozrime sa na to prakticky.

 // používa prerušenie ako formulár goto v kontexte do triedy Java main_class {public static void main (reťazec args []) {boolean t = true; prvý {druhý {tretí {system.out.println ("tento tretí blok"); ak (t) najprv prerušíte; } system.out.println ("tento druhý blok"); } system.out.println ("tento prvý blok"); } system.out.println ("tento hlavný blok"); }} // výstup: toto je tretí blok, to je hlavný blok 

V tomto kóde, keď kontrola dosiahne tretí blok, sa vykoná jeho výpis o výtlačku a potom sa ovládací prvok obnoví príkazu "if" a ak je spokojný, vykoná sa príkaz break s označením. Štítok priložený s prestávkou je prvý, takže kontrola pokračuje vo vyhlásení napísanom po prvom konci bloku, tj v hlavnom bloku, ktorý je tlačovým výpisom a ktorý sa vykoná.

Definícia Pokračovať

Keďže prestávka ukončuje zostávajúcu iteráciu slučky a nechá tak riadok opustiť slučku, tu pokračujte v prácach trochu pracuje ako prestávka. Príkaz pokračovanie zastaví vykonanie zostávajúceho kódu v slučke pre túto aktuálnu iteráciu a obnoví ovládací prvok na ďalšiu opakovanie tejto slučky. Príkaz pokračuje preskočí kód pre aktuálnu iteráciu a prejde riadiacou jednotkou na ďalšiu opakovanie slučky.

Chápeme to s príkladom.

 // používajte kontext v C ++. // vytlačí párne číslo do 100. class main_class {public static void main (reťazec args []) {pre (int i = 0; i <100; i ++) {if (i% 2! = 0) pokračovať; // Pokračujte v obnovení ovládacieho prvku na ďalšiu opakovanie v smyčke system.out.println ("i:" + i); }}} 

Vo vyššie uvedenom programe, ak je vyhlásenie "if" splnené, pokračujte v príkaze, ktorý neumožňuje vykonanie nasledujúceho tlačového výkazu a pokračovanie v ovládaní na ďalšiu opakovanie cyklu 'for'. Ak i = 1 potom je podmienka "if" splnená a pokračuje sa vykonaná, bez vykonania tlačového výkazu pre nepárnu hodnotu "i" a riadiaca jednotka pokračuje na ďalšiu iteráciu slučky 'pre i = 2'. Ak i = 2 potom vyhlásenie "if" nie je splnené; pokračovať nevykoná a tlačový výpis vytlačí hodnotu 'i', ktorá je rovnomerná.

Kľúčové rozdiely medzi prestávkou a pokračovaním

  1. V podstate kľúčové slovo prestávky ukončuje zostávajúce zostávajúce opakovania slučky. Na druhej strane pokračujúce kľúčové slovo ukončí iba aktuálnu iteráciu slučky.
  2. Po vykonaní kľúčového slova prerušenia sa ovládanie programu ukončí mimo slučky a pokračuje po ďalšom vyhlásení po smyčke. V prípade pokračujúceho kľúčového slova sa ovládanie programu obnoví na ďalšiu opakovanie cyklu.
  3. Ako je uvedené vyššie, záverom je, že po vykonaní kontroly prerušenia programu sa ukončí výstup zo slučky, je jasné, že prestávka spôsobuje skoré ukončenie akejkoľvek slučky. Na druhej strane pokračujte len v ukončení aktuálnej iterácie a pokračujte v ďalšej iterácii slučky, potom môžeme povedať, že pokračovanie spôsobí skoré vykonanie ďalšej iterácie slučky.
  4. Kľúčové slovo prerušenia ukončí všetku zostávajúcu iteráciu po jej vykonaní, takže môžeme povedať, že zastaví pokračovanie slučky, zatiaľ čo pokračujúce kľúčové slovo stále pokračuje vo vykonávaní slučky.
  5. Kľúčové slovo break môže byť použité spolu s príkazmi "switch" a "label", zatiaľ čo pokračovanie kľúčového slova sa nedá použiť s "switch" a "label".

záver:

Pokyny na prerušenie a pokračovanie sú vyhlásenie skoku, ktoré prenáša ovládací prvok na inú časť programu. V prípade, že príkaz o prerušení dovolí ovládaciemu prvku opustiť slučku, príkaz pokračovať nechá riadenie na ďalšiu opakovanie tejto slučky.

Top