Raccomandato, 2024

Scelta Del Redattore

Differenza tra pausa e continua

Sia "break" che "continue" sono le istruzioni "jump", che trasferiscono il controllo del programma in un'altra parte del programma. C ++ supporta quattro istruzioni jump, ovvero "return", "goto", "break" e "continue". Java supporta tre istruzioni jump 'break' 'continue' e 'return'. La differenza principale tra interruzione e continuazione è che l'interruzione viene utilizzata per la chiusura immediata del ciclo mentre, continua terminare l'iterazione corrente e riprende il controllo alla successiva iterazione del ciclo. Studiamo la differenza tra pausa e continua nel contesto di C ++ e Java.

Grafico comparativo:

Base per il confrontorompereContinua
Compito
Termina l'esecuzione della restante iterazione del ciclo.Termina solo l'iterazione corrente del loop.
Controllo dopo pausa / continua'break' riprende il controllo del programma alla fine del loop che racchiude quel 'break'.'continue' riprende il controllo del programma alla successiva iterazione di quel loop che racchiude 'continue'.
Le causeProvoca la fine anticipata del ciclo.Provoca l'esecuzione anticipata della successiva iterazione.
continuazione'break' interrompe la continuazione del ciclo.'continua' non interrompe la continuazione del ciclo, interrompe solo l'iterazione corrente.
Altri usi'break' può essere usato con 'switch', 'label'.'continua' non può essere eseguito con 'switch' e 'labels'.

Definizione di Break

Nell'interruzione C ++ ha solo due usi, vale a dire che prima viene utilizzato per "terminare l'esecuzione di un caso nell'istruzione switch". Secondo, "terminare il ciclo e riprendere il controllo alla successiva istruzione che segue il ciclo". Ma in Java break ha prima tre usi, termina il caso nello switch, il secondo termina il ciclo che racchiude l'interruzione e il terzo, come menzionato in precedenza che Java non fornisce un'istruzione 'goto' ma, l'interruzione estesa del modulo può essere usata in luogo di 'goto'.

Vediamo, ogni uso della "rottura" in dettaglio.

Primo utilizzo per terminare l'esecuzione del caso in switch. L'interruttore di interruzione influisce solo su quell'interruttore che lo racchiude, non influisce sul loop che racchiude l'interruttore.

 // In contesto con C ++. // usando break-in switch nel contesto di C ++. switch (espressione intera) {case 1: ..... ..... break; caso 2: ..... ..... pausa; caso 3: ..... ..... pausa; predefinito: ....... ....... } 

Secondo uso, per terminare forzatamente il ciclo e riprendere alla successiva istruzione del ciclo. Non appena si incontra l'istruzione break all'interno del ciclo, quel loop viene immediatamente terminato senza eseguire il codice rimanente nel corpo di quel ciclo e il controllo del programma raggiunge la successiva istruzione scritta dopo quel ciclo.

 // utilizzando break per uscire dal ciclo nel contesto della classe Java main_class {public static void main (string args []) {for (int i = 0; i <100; i ++) {system.out.println ("i:" + i); if (i == 10) break; // come condizione nel controllo 'if' satistfies esce dal ciclo 'for'. } system.out.println ("Loop break here"); }} 

break solo lascia che il programma esca dal loop che lo racchiude. Se l'interruzione viene utilizzata con il ciclo annidato, interrompe solo il ciclo più interno e non influisce sul ciclo esterno.

Il terzo uso, usando la pausa come forma di goto. Java usa l'interruzione come forma di goto senza il suo problema. Poiché goto fornisce una ramificazione non strutturata che è difficile da comprendere e inoltre goto proibisce l'ottimizzazione del compilatore, Java utilizza una forma estesa di interruzione che è simile a goto e consente di uscire da più di un blocco alla volta e riprendere il controllo del programma sul fine del blocco etichettato, menzionato con l'istruzione break.

Dichiarazione:

 etichetta di rottura; 

Qui, "etichetta" è il nome di un determinato blocco di codice o un identificatore in Java, e questo blocco etichettato deve racchiudere l'istruzione break. L'istruzione break etichettata viene utilizzata per uscire dall'insieme del ciclo annidato. Quando si incontra l'istruzione break con etichetta, il controllo esce dal blocco etichettato che viene citato con l'istruzione break.
Vediamolo praticamente.

 // usa break come forma di goto nel contesto della classe Java main_class {public static void main (string args []) {booleano t = true; primo {secondo {terzo {system.out.println ("questo terzo blocco"); se (t) si rompono per primi; } system.out.println ("questo secondo blocco"); } system.out.println ("questo primo blocco"); } system.out.println ("questo blocco principale"); }} // output: questo è il terzo blocco questo è il blocco principale 

In questo codice, quando il controllo raggiunge il terzo blocco, viene eseguita la sua istruzione di stampa e dopo di ciò il controllo ritorna all'istruzione "if" e, come è soddisfatto, viene eseguita l'istruzione break con l'etichetta. L'etichetta associata con l'interruzione è la prima, quindi il controllo riprende l'istruzione scritta dopo la fine del blocco, ovvero nel blocco principale che è un'istruzione di stampa e che viene eseguita.

Definizione di Continua

Quando un'interruzione termina la restante iterazione del ciclo e lascia che il controllo esca dal ciclo, qui, continua, funziona in qualche modo come un'interruzione. L'istruzione continue interrompe l'esecuzione del codice rimanente nel ciclo per l'iterazione corrente e riprende il controllo alla successiva iterazione di quel ciclo. L'istruzione continue salta il codice per l'iterazione corrente e passa il controllo alla successiva iterazione del ciclo.

Comprendiamolo con un esempio.

 // usando continua in context to C ++. // stampa il numero pari fino a 100. class main_class {public static void main (string args []) {for (int i = 0; i <100; i ++) {if (i% 2! = 0) continua; // continua riprende il controllo alla successiva iterazione in ciclo system.out.println ("i:" + i); }}} 

Nel programma precedente, se l'istruzione 'if' è soddisfatta, viene eseguita l'istruzione continue, che non consente l'esecuzione della seguente istruzione di stampa e riprende il controllo alla successiva iterazione del ciclo 'for'. Se i = 1 allora la condizione 'if' è soddisfatta e continua viene eseguita, senza eseguire l'istruzione print per il valore dispari di 'i' e, il controllo riprende alla successiva iterazione del ciclo 'per i = 2'. Se i = 2, allora l'istruzione "se" non è soddisfatta; continua non viene eseguito e l'istruzione di stampa stampa il valore di "i" che è pari.

Differenze chiave tra Break e Continue

  1. Fondamentalmente, la parola chiave break termina il resto delle iterazioni rimanenti del ciclo. D'altra parte, la parola chiave continue termina solo l'iterazione corrente del ciclo.
  2. Una volta eseguita la parola chiave break, il controllo del programma esce dal ciclo e riprende l'istruzione successiva dopo il ciclo. In caso di continuare la parola chiave, il controllo del programma riprende alla successiva iterazione del ciclo.
  3. Come concluso sopra, che dopo l'esecuzione del controllo di interruzione del programma, l'uscita dal ciclo è chiaramente intesa che la rottura causa la cessazione anticipata di qualsiasi loop. D'altra parte, continua solo a terminare l'iterazione corrente e riprendere l'iterazione successiva del ciclo, quindi possiamo dire che continua causa l'esecuzione anticipata della successiva iterazione del ciclo.
  4. La parola chiave break termina tutta l'iterazione rimanente dopo la sua esecuzione, quindi possiamo dire che interrompe la continuazione del ciclo, mentre la parola chiave continue continua l'esecuzione del ciclo.
  5. La parola chiave break può essere utilizzata insieme alle istruzioni "switch" e "label" mentre, la parola chiave continue non può essere utilizzata con "switch" e "label".

Conclusione:

L'istruzione break e continue sono entrambe le istruzioni di salto che trasferiscono il controllo in un'altra parte del programma. Laddove l'istruzione break lascia che il controllo esca dal ciclo, l'istruzione continue lascia il controllo alla successiva iterazione di quel ciclo.

Top