Rekommenderas, 2024

Redaktionen

Skillnad mellan rast och fortsätt

Både "break" och "continue" är "hopp" -förklaringarna, som överför kontrollen av programmet till en annan del av programmet. C ++ stöder fyra hoppa uttalanden, nämligen "return", "goto", "break" och "continue". Java stöder tre hoppa uttalanden 'break' 'fortsätt' och 'returnera'. Huvudskillnaden mellan paus och fortsättning är att pausen används för omedelbar avslutning av slingan medan fortsätt att avsluta aktuell iteration och återuppta kontrollen till nästa iteration av slingan. Låt oss studera skillnaden mellan rast och fortsätt i sammanhanget med C ++ och Java.

Jämförelsediagram:

Grunder för jämförelseha sönderFortsätta
Uppgift
Det avslutar utförandet av återstående iteration av slingan.Det avslutar endast den aktuella iterationen av slingan.
Kontroll efter paus / fortsättning"break" återupptar kontrollen av programmet till slutet av loop som omsluter det "break"."fortsätt" återupptar kontrollen av programmet till nästa iteration av den loop som omsluter "fortsätt".
orsakerDet orsakar tidigt uppsägning av slingan.Det orsakar tidigt utförande av nästa iteration.
Fortsättning"break" stoppar fortsättningen av slingan."fortsätt" stoppar inte fortsättningen av slingan, det stannar bara den aktuella iterationen.
Andra användningsområden'break' kan användas med 'switch', 'label'.'fortsätt' kan inte utföras med 'switch' och 'labels'.

Definition av Break

I C + + -brott har endast två användningsområden, dvs först används det för att "avsluta utförandet av ett fall i omkopplingsdeklaration". För det andra, "avsluta slingan och fortsätt kontrollen till nästa uttalande efter slingan". Men i Java har brytningen tre användningsområden först, det avslutar fallet i omkopplaren, för det andra att avsluta slingan som omsluter brytning och för det tredje, som tidigare nämnts, att Java inte ger ett "goto" -deklaration, men det förlängda formuläret kan användas i plats för "goto".

Låt oss se, varje användning av "break" i detalj.

Första användningen för att avsluta utförandet av fallet i omkopplaren. Brytbrytaren påverkar endast den strömbrytare som omsluter den, det påverkar inte slingan som omsluter omkopplaren.

 // I sammanhang med C ++. // med brytning i omkopplare i sammanhang av C ++. switch (heltalsexpression) {fall 1: ..... ..... break; fall 2: ..... ..... rast; fall 3: ..... ..... rast; standard: ....... ....... } 

Andra användningen, att tvinga avsluta slingan och återuppta vid nästa slutsats. Så snart som brytningsdeklarationen uppträder inuti slingan, avslutas den slingan omedelbart utan att exekvera den återstående koden i den slingans kropp och programstyrningen når till nästa uttalande skrivet efter den slingan.

 // använder brytning för att avsluta slingan i kontext till Java klass main_class {public static void main (sträng args []) {för (int i = 0; i <100; i ++) {system.out.println ("i:" + i); om (i == 10) break; // som villkoret inom "om" satistfies kontroll kommer ut ur "för" loop. } system.out.println ("Loop breaks here"); }} 

bryta bara låt programmet avsluta slingan som omsluter den. Om pausen används med nästad slinga bryter den bara ut den innersta slingan och påverkar inte den yttre slingan.

Den tredje användningen, genom att använda pausen som form av goto. Java använder paus som en form av goto utan problem. Eftersom goto ger en ostrukturerad förgrening som är svår att förstå och goto förbjuder kompilatoroptimering, använder Java en expanderad form av paus som liknar goto och hjälper till att avsluta mer än ett block i taget och återuppta kontrollen av programmet till slutet av märkt block, som nämns med break-uttalandet.

Deklaration:

 break etikett; 

Här är "etikett" namnet på ett visst kodblock eller en identifierare i Java, och det här märkta blocket måste bifoga break-utlåtelsen. Det märkta break-uttalet används för att gå ut från uppsättningen nästad slinga. Eftersom det märkta break-uttalandet stöter på kontrollen, lämnar kontrollen det märkta blocket som nämns med break-uttalandet.
Låt oss se det praktiskt taget.

 // använder paus i form av goto i kontext till Java klass main_class {public static void main (sträng args []) {boolean t = true; första {andra {tredje {system.out.println ("detta tredje block"); om (t) bryter först; } system.out.println ("detta andra block"); } system.out.println ("detta första block"); } system.out.println ("detta huvudblock"); }} // output: detta är det tredje blocket det här är huvudblocket 

I den här koden, när kontrollen når det tredje blocket, utförs dess utskriftsförklaring och därefter återgår kontrollen till "if" -förklaringen, och som det är nöjd utförs brytningsdeklarationen med etiketten. Etikett bifogad med paus är först, så kontroll fortsätt till det uttalande som skrivits efter slutet av blocket först dvs i huvudblocket, vilket är ett utskriftsdeklaration och som utförs.

Definition av Fortsätt

När pausen slutar det återstående iterationen av slingan och låter kontrollen gå ut i slingan, fortsätter arbetet lite och fungerar som en paus. Fortsätt-satsen stoppar körningen av återstående kod i slingan för den aktuella iterationen och återupptar kontrollen till nästa iteration av den slingan. Fortsätt-satsen hoppa över koden för den aktuella iterationen och överför kontrollen till nästa iteration av slingan.

Låt oss förstå det med ett exempel.

 // använda fortsätt i kontext till C ++. // det skriver ut jämntalet till 100. klass main_class {public static void main (strängargs []) {för (int i = 0; i <100; i ++) {om (i% 2! = 0) fortsätt; // fortsätt fortsätt kontrollen till nästa iteration i för loop system.out.println ("i:" + i); }}} 

I det ovanstående programmet, om "if" -säkningen är uppfylld, fortsätt fortsätt uttalandet, vilket inte tillåter följande utskriftsdeklaration att utföra och återuppta kontrollen till nästa iteration av "for" -slingan. Om jag = 1 är "if" -villkoren nöjd och fortsätter att utföras utan att exekvera utskriftsdeklarationen för det udda värdet av 'i' och kommer kontrollen att återgå till nästa iteration av slingan för i = 2 '. Om jag = 2 då "if" -sättningen inte är uppfylld fortsätt kör inte och skriv ut uttalandet skriver ut värdet av 'i' vilket är jämnt.

Viktiga skillnader mellan Break och Fortsätt

  1. I grund och botten bryter sökordet resten av återstående iterationer i slingan. Å andra sidan slutar det fortsatta sökordet endast löpande iteration av slingan.
  2. När brytordsordet exekveras avslutas kontrollen av programmet ur slingan och fortsätter till nästa uttalande efter slingan. Vid fortsättning av sökordet fortsätter kontrollen av programmet till nästa iteration av slingan.
  3. Som ovan slutsatsen slutsatsen att efter genomförandet av brytkontrollen av programutgången ur slingan är det tydligt förstått att sönderbrott orsakar tidig uppsägning av en slinga. Å andra sidan fortsätter du bara att avsluta den aktuella iterationen och återuppta till nästa iteration av slingan, då kan vi säga att fortsätter orsakar tidig exekvering av nästa iteration av slingan.
  4. Brytordsordet avslutar all återstående iteration efter dess genomförande så att vi kan säga att det stannar fortsättningen av slingan, medan fortsättningsordet fortsätter att fortsätta slingans utförande.
  5. Brytordsordet kan användas tillsammans med "switch" -sättningarna och "etiketten" medan fortsättningsordet inte kan användas med "switch" och "label".

Slutsats:

Pause och fortsätt uttalandet är både hopputskottet som överför kontrollen till en annan del av programmet. Om brytningsdeklarationen släpper kontrollen ut ur slingan, släpper fortsättningsdeklarationen kontrollen till nästa iteration av den slingan.

Top