Iteration i Todimensionelt Array
Sådan itereres i et todimensionelt array ved hjælp af en for-løkke?
At iterere gennem et todimensionelt array kan være lidt udfordrende at forstå i starten, så vær ikke bekymret, hvis det ikke giver mening med det samme. I dette kapitel vil jeg vise, hvordan det gøres, og forklare, hvordan det fungerer.
Vi bruger en indlejret løkke til at iterere gennem et todimensionelt array, hvilket betyder en løkke inden i en anden. Den ydre løkke itererer over rækkerne, mens den indre løkke itererer over kolonnerne. Lad os se på syntaksen for at iterere gennem et todimensionelt array ved hjælp af eksempel-arrayet, vi oprettede i det forrige kapitel:
Main.java
12345678910111213141516package com.example; public class Main { public static void main(String[] args) { int[][] twoDimensionalArray = { {1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}, {13, 14, 15, 16} }; for (int i = 0; i < twoDimensionalArray.length; i++) { for (int j = 0; j < twoDimensionalArray[0].length; j++) { System.out.print(twoDimensionalArray[i][j] + " "); } System.out.println(); } } }
Lad os undersøge betydningen af hvert element i kodeeksemplet ovenfor:
int[][] twoDimensionalArray =: denne linje initialiserer et todimensionelt array;for (int i = 0; i < twoDimensionalArray.length; i++): den første for-løkke itererer over rækkerne i vores matrix. Mens vi er på den første række, går vores program ind i den indlejrede løkke, hvilket ikke påvirker den ydre løkke. Variablenirepræsenterer det aktuelle rækkenummer;for (int j = 0; j < twoDimensionalArray[0].length; j++): den anden for-løkke itererer over kolonnerne i matrixen. Mens vi er på række 0, itererer vi gennem kolonnerne i den række. Variablenjrepræsenterer det aktuelle kolonnenummer;System.out.print(twoDimensionalArray[i][j] + " "): i denne linje bruger viSystem.out.printtil at vise vores værdier på én linje. Sådan fungerer det: mens vi er på række 0, itererer vi gennem kolonnerne på den række. For eksempel,array[0][1], efterfulgt afarray[0][2]osv. Vi fortsætter gennem kolonnerne, så længejer mindre endarray[0].length. Når vi nårarray[0].length, vender vi tilbage til det ydre array og går videre til den første række. For eksempel,array[0][3] -> array[1][0]. Vi har nået vores grænser og er derefter gået videre til række 1.
Swipe to start coding
Beregn gennemsnitstemperaturen for hver ugedag baseret på data fra flere stationer.
Du får følgende:
- Station 1:
{20, 22, 24, 19, 21, 23, 25} - Station 2:
{18, 20, 22, 19, 20, 22, 24} - Station 3:
{21, 23, 25, 22, 24, 26, 28} - Station 4:
{19, 21, 23, 20, 22, 24, 26}
Opgave:
- Skriv en metode kaldet
calculateDailyAverages(int[][] temperatures), der returnerer etdouble[]. - I denne metode:
- Gennemløb hver dag (kolonner i 2D-arrayet).
- Initialiser
totalTemptil at gemme summen af temperaturer for dagen. - Brug en indre løkke til at gennemgå alle stationer (rækker).
- Læg temperaturerne fra hver station sammen for den aktuelle dag.
- Divider summen med antallet af stationer for at finde gennemsnittet.
- Gem resultatet i et array.
- Returnér arrayet med gennemsnit.
Løsning
Tak for dine kommentarer!
single
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Fantastisk!
Completion rate forbedret til 2.7
Iteration i Todimensionelt Array
Stryg for at vise menuen
Sådan itereres i et todimensionelt array ved hjælp af en for-løkke?
At iterere gennem et todimensionelt array kan være lidt udfordrende at forstå i starten, så vær ikke bekymret, hvis det ikke giver mening med det samme. I dette kapitel vil jeg vise, hvordan det gøres, og forklare, hvordan det fungerer.
Vi bruger en indlejret løkke til at iterere gennem et todimensionelt array, hvilket betyder en løkke inden i en anden. Den ydre løkke itererer over rækkerne, mens den indre løkke itererer over kolonnerne. Lad os se på syntaksen for at iterere gennem et todimensionelt array ved hjælp af eksempel-arrayet, vi oprettede i det forrige kapitel:
Main.java
12345678910111213141516package com.example; public class Main { public static void main(String[] args) { int[][] twoDimensionalArray = { {1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}, {13, 14, 15, 16} }; for (int i = 0; i < twoDimensionalArray.length; i++) { for (int j = 0; j < twoDimensionalArray[0].length; j++) { System.out.print(twoDimensionalArray[i][j] + " "); } System.out.println(); } } }
Lad os undersøge betydningen af hvert element i kodeeksemplet ovenfor:
int[][] twoDimensionalArray =: denne linje initialiserer et todimensionelt array;for (int i = 0; i < twoDimensionalArray.length; i++): den første for-løkke itererer over rækkerne i vores matrix. Mens vi er på den første række, går vores program ind i den indlejrede løkke, hvilket ikke påvirker den ydre løkke. Variablenirepræsenterer det aktuelle rækkenummer;for (int j = 0; j < twoDimensionalArray[0].length; j++): den anden for-løkke itererer over kolonnerne i matrixen. Mens vi er på række 0, itererer vi gennem kolonnerne i den række. Variablenjrepræsenterer det aktuelle kolonnenummer;System.out.print(twoDimensionalArray[i][j] + " "): i denne linje bruger viSystem.out.printtil at vise vores værdier på én linje. Sådan fungerer det: mens vi er på række 0, itererer vi gennem kolonnerne på den række. For eksempel,array[0][1], efterfulgt afarray[0][2]osv. Vi fortsætter gennem kolonnerne, så længejer mindre endarray[0].length. Når vi nårarray[0].length, vender vi tilbage til det ydre array og går videre til den første række. For eksempel,array[0][3] -> array[1][0]. Vi har nået vores grænser og er derefter gået videre til række 1.
Swipe to start coding
Beregn gennemsnitstemperaturen for hver ugedag baseret på data fra flere stationer.
Du får følgende:
- Station 1:
{20, 22, 24, 19, 21, 23, 25} - Station 2:
{18, 20, 22, 19, 20, 22, 24} - Station 3:
{21, 23, 25, 22, 24, 26, 28} - Station 4:
{19, 21, 23, 20, 22, 24, 26}
Opgave:
- Skriv en metode kaldet
calculateDailyAverages(int[][] temperatures), der returnerer etdouble[]. - I denne metode:
- Gennemløb hver dag (kolonner i 2D-arrayet).
- Initialiser
totalTemptil at gemme summen af temperaturer for dagen. - Brug en indre løkke til at gennemgå alle stationer (rækker).
- Læg temperaturerne fra hver station sammen for den aktuelle dag.
- Divider summen med antallet af stationer for at finde gennemsnittet.
- Gem resultatet i et array.
- Returnér arrayet med gennemsnit.
Løsning
Tak for dine kommentarer!
single