Iteration im Zweidimensionalen Array
Wie wird in einem zweidimensionalen Array mit einer for-Schleife iteriert?
Das Durchlaufen eines zweidimensionalen Arrays kann anfangs etwas schwierig zu verstehen sein, daher ist es nicht schlimm, wenn es nicht sofort klar wird. In diesem Kapitel zeige ich, wie es funktioniert, und erkläre den Ablauf.
Wir verwenden eine geschachtelte Schleife, um durch ein zweidimensionales Array zu iterieren, das heißt eine Schleife innerhalb einer anderen. Die äußere Schleife durchläuft die Zeilen, während die innere Schleife die Spalten durchläuft. Schauen wir uns die Syntax für das Iterieren durch ein zweidimensionales Array anhand des Beispiel-Arrays aus dem vorherigen Kapitel an:
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(); } } }
Lassen Sie uns die Bedeutung jedes Elements im oben bereitgestellten Codeausschnitt erläutern:
int[][] twoDimensionalArray =: Diese Zeile initialisiert ein zweidimensionales Array;for (int i = 0; i < twoDimensionalArray.length; i++): Die erste for-Schleife iteriert über die Zeilen unserer Matrix. Während wir uns in der ersten Zeile befinden, betritt unser Programm die verschachtelte Schleife, was die äußere Schleife nicht beeinflusst. Die Variableisteht für die aktuelle Zeilennummer;for (int j = 0; j < twoDimensionalArray[0].length; j++): Die zweite for-Schleife iteriert über die Spalten der Matrix. Während wir uns in der 0. Zeile befinden, iterieren wir durch die Spalten dieser Zeile. Die Variablejsteht für die aktuelle Spaltennummer;System.out.print(twoDimensionalArray[i][j] + " "): In dieser Zeile verwenden wirSystem.out.print, um unsere Werte in einer einzigen Zeile anzuzeigen. So funktioniert es: Während wir uns in der 0. Zeile befinden, iterieren wir durch die Spalten dieser Zeile. Zum Beispielarray[0][1], gefolgt vonarray[0][2]und so weiter. Wir fahren mit den Spalten fort, solangejkleiner alsarray[0].lengthist. Sobald wirarray[0].lengtherreichen, kehren wir zum äußeren Array zurück und wechseln zur ersten Zeile. Zum Beispiel,array[0][3] -> array[1][0]. Wir haben unsere Grenzen erreicht und sind dann zur Zeile 1 übergegangen.
Swipe to start coding
Berechne die durchschnittliche Temperatur für jeden Wochentag basierend auf den Daten mehrerer Stationen.
Gegeben sind:
- 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}
Aufgabe:
- Eine Methode mit dem Namen
calculateDailyAverages(int[][] temperatures)schreiben, die eindouble[]zurückgibt. - In dieser Methode:
- Über jeden Tag iterieren (Spalten des 2D-Arrays).
- Für jeden Tag
totalTempinitialisieren, um die Summe der Temperaturen zu speichern. - Mit einer inneren Schleife alle Stationen (Zeilen) durchlaufen.
- Die Temperaturen jeder Station für den aktuellen Tag aufsummieren.
- Die Gesamtsumme durch die Anzahl der Stationen teilen, um den Durchschnitt zu berechnen.
- Das Ergebnis im Array speichern.
- Das Array mit den Durchschnittswerten zurückgeben.
Lösung
solution.java
Danke für Ihr Feedback!
single
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen
Can you show me an example of a two-dimensional array?
Can you explain how the nested loops work with a real example?
What happens if the rows have different lengths?
Awesome!
Completion rate improved to 2.7
Iteration im Zweidimensionalen Array
Swipe um das Menü anzuzeigen
Wie wird in einem zweidimensionalen Array mit einer for-Schleife iteriert?
Das Durchlaufen eines zweidimensionalen Arrays kann anfangs etwas schwierig zu verstehen sein, daher ist es nicht schlimm, wenn es nicht sofort klar wird. In diesem Kapitel zeige ich, wie es funktioniert, und erkläre den Ablauf.
Wir verwenden eine geschachtelte Schleife, um durch ein zweidimensionales Array zu iterieren, das heißt eine Schleife innerhalb einer anderen. Die äußere Schleife durchläuft die Zeilen, während die innere Schleife die Spalten durchläuft. Schauen wir uns die Syntax für das Iterieren durch ein zweidimensionales Array anhand des Beispiel-Arrays aus dem vorherigen Kapitel an:
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(); } } }
Lassen Sie uns die Bedeutung jedes Elements im oben bereitgestellten Codeausschnitt erläutern:
int[][] twoDimensionalArray =: Diese Zeile initialisiert ein zweidimensionales Array;for (int i = 0; i < twoDimensionalArray.length; i++): Die erste for-Schleife iteriert über die Zeilen unserer Matrix. Während wir uns in der ersten Zeile befinden, betritt unser Programm die verschachtelte Schleife, was die äußere Schleife nicht beeinflusst. Die Variableisteht für die aktuelle Zeilennummer;for (int j = 0; j < twoDimensionalArray[0].length; j++): Die zweite for-Schleife iteriert über die Spalten der Matrix. Während wir uns in der 0. Zeile befinden, iterieren wir durch die Spalten dieser Zeile. Die Variablejsteht für die aktuelle Spaltennummer;System.out.print(twoDimensionalArray[i][j] + " "): In dieser Zeile verwenden wirSystem.out.print, um unsere Werte in einer einzigen Zeile anzuzeigen. So funktioniert es: Während wir uns in der 0. Zeile befinden, iterieren wir durch die Spalten dieser Zeile. Zum Beispielarray[0][1], gefolgt vonarray[0][2]und so weiter. Wir fahren mit den Spalten fort, solangejkleiner alsarray[0].lengthist. Sobald wirarray[0].lengtherreichen, kehren wir zum äußeren Array zurück und wechseln zur ersten Zeile. Zum Beispiel,array[0][3] -> array[1][0]. Wir haben unsere Grenzen erreicht und sind dann zur Zeile 1 übergegangen.
Swipe to start coding
Berechne die durchschnittliche Temperatur für jeden Wochentag basierend auf den Daten mehrerer Stationen.
Gegeben sind:
- 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}
Aufgabe:
- Eine Methode mit dem Namen
calculateDailyAverages(int[][] temperatures)schreiben, die eindouble[]zurückgibt. - In dieser Methode:
- Über jeden Tag iterieren (Spalten des 2D-Arrays).
- Für jeden Tag
totalTempinitialisieren, um die Summe der Temperaturen zu speichern. - Mit einer inneren Schleife alle Stationen (Zeilen) durchlaufen.
- Die Temperaturen jeder Station für den aktuellen Tag aufsummieren.
- Die Gesamtsumme durch die Anzahl der Stationen teilen, um den Durchschnitt zu berechnen.
- Das Ergebnis im Array speichern.
- Das Array mit den Durchschnittswerten zurückgeben.
Lösung
solution.java
Danke für Ihr Feedback!
single