Java indlejrede sløjfer

Java Indlejrede Slojfer



Mens du programmerer i Java, kan der være et krav om at tilknytte flere funktioner. For eksempel arbejde med træer eller håndtering af prioritetsbaserede funktioner. I sådanne situationer er ' indlejrede løkker ” i Java gør det muligt for udvikleren at akkumulere og flette de sammenkædede funktioner og strømline kodefunktionaliteterne effektivt.

Denne artikel vil diskutere brug og implementering af 'indlejrede loops' i Java.







Hvad er 'Nested Loops' i Java?

en ' indlejret sløjfe ” i Java svarer til en indre løkke, der er indeholdt i løkkelegemet af den ydre løkke. Disse loops kan anvendes i forskellige scenarier for at tilknytte forskellige forbundne funktionaliteter.



Eksempel 1: Anvendelse af indlejrede løkker på heltal i Java



I dette eksempel vil de indlejrede loops blive brugt til at akkumulere de særlige værdier inden for hver af de andre itererede værdier:





int id = 2 ;
int alder = 10 ;
til ( int i = 0 ; jeg < = id ; i++ ) {
System.out.println ( 'ID: ' + i ) ;
til ( int j = 5 ; j < = alder; j++ ) {
System.out.println ( 'Alder:' + j ) ;
} }

I ovenstående kodelinjer:



  • Start først de to heltalsværdier.
  • Anvend derefter ' til ” loop for at iterere langs det tidligere initialiserede heltal og vise det.
  • Anvend nu den indlejrede ' til ” sløjfe for at gentage sidstnævnte heltal individuelt og logge det på konsollen.
  • Dette vil resultere i akkumulering af hvert af de sidstnævnte heltal inden for hvert tidligere heltal.

Bemærk: Den indlejrede (sidstnævnte) løkke akkumuleres inden for det ydre løkkeomfang.

Produktion

I dette output kan det ses, at rederiet er udført hensigtsmæssigt.

Eksempel 2: Anvendelse af indlejrede løkker på arrays i Java

I dette særlige eksempel kan de indlejrede sløjfer implementeres til at iterere langs ' Snor ' arrays:

String array1 [ ] = { 'Harry' , 'David' , 'Jack' } ;
String array2 [ ] = { 'Englene' , 'London' , 'Beijing' } ;
til ( int i = 0 ;jeg < array1.length;i++ ) {
System.out.println ( matrix1 [ jeg ] + ' \n ' ) ;
til ( int j = 0 ;j < array2.length;j++ ) {
System.out.println ( matrix2 [ j ] + ' \n ' ) ;
} }

I ovenstående kodeblok:

  • Erklær to strenge arrays med navnet ' matrix1 ' og ' matrix2 ” indeholdende de angivne værdier.
  • Anvend nu ' til ” sløjfe for at gentage den tidligere strengmatrix.
  • Ligeledes skal du iterere gennem den sidstnævnte indlejrede løkke inden for den førstnævnte løkke for at iterere langs den.
  • Dette vil på samme måde vise hvert indlejret array-element inden for hvert ydre sløjfeelement.

Produktion

Ud fra dette resultat kan det analyseres, at hver af strengværdierne i den indlejrede løkke vises mod de ydre løkkeværdier.

Eksempel 3: Anvendelse af indlejrede løkker til at udskrive et mønster i Java

I dette eksempel kan de indlejrede sløjfer implementeres til at udskrive en ' halv-pyramide mønster ”:

int rows, cols, totalRows = 3 ;
til ( rækker = 0 ; rækker < totalRows; rækker++ ) {
til ( cols = 0 ; cols < =rækker; cols++ ) {
System.out.print ( '*' ) ;
}
System.out.println ( ) ;
}

Anvend nedenstående trin i denne kodeblok:

  • For det første skal du angive og initialisere de angivne værdier.
  • Anvend nu ' til ” sløjfe svarende til pyramiderækkerne.
  • Den indlejrede ' til ”-løkke angiver pyramidekolonnerne.
  • Inden for denne løkke skal du printe det angivne mønster til print, og derved lave et mønster.
  • Algoritme: For hver række vil den indlejrede kolonne blive udskrevet, således at kolonnen ikke overskrider rækkegrænsen ved hver iteration.
  • Endelig den tomme ' println() ”-metoden sekventielt udskriver mønsteret som en pyramide.

Produktion

Dette output viser, at pyramidemønsteret er tydeligt udskrevet korrekt.

Konklusion

en ' indlejret sløjfe ” i Java svarer til en indre løkke, der vises i løkkelegemet af den ydre løkke, således at den indre løkke er afhængig af den ydre løkke. Disse sløjfer kan anvendes på henholdsvis de initialiserede værdier og arrays eller til at skabe et mønster. Denne blog diskuterede implementeringen af ​​indlejrede loops i Java.