Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Iteratie in Tweedimensionale Array | Arrays
Java Basis
Sectie 4. Hoofdstuk 5
single

single

Iteratie in Tweedimensionale Array

Veeg om het menu te tonen

Hoe te itereren binnen een tweedimensionale array met een for-lus?

Itereren door een tweedimensionale array kan in het begin wat lastig zijn om te begrijpen, dus maak je geen zorgen als het niet direct duidelijk is. In dit hoofdstuk wordt uitgelegd hoe dit werkt en hoe je het kunt uitvoeren.

We gebruiken een geneste lus om door een tweedimensionale array te itereren, wat betekent een lus binnen een andere lus. De buitenste lus itereert over de rijen, terwijl de binnenste lus itereert over de kolommen. Laten we de syntaxis bekijken voor het itereren door een tweedimensionale array met behulp van de voorbeeldarray die we in het vorige hoofdstuk hebben gemaakt:

Main.java

Main.java

12345678910111213141516
package 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(); } } }

Hier is de betekenis van elk element in de bovenstaande codefragment:

  • int[][] twoDimensionalArray =: deze regel initialiseert een tweedimensionale array;
  • for (int i = 0; i < twoDimensionalArray.length; i++): de eerste for-lus itereert over de rijen van onze matrix. Terwijl we op de eerste rij zijn, gaat ons programma de geneste lus in, wat geen invloed heeft op de buitenste lus. De variabele i vertegenwoordigt het huidige rijnummer;
  • for (int j = 0; j < twoDimensionalArray[0].length; j++): de tweede for-lus itereert over de kolommen van de matrix. Terwijl we op de 0e rij zijn, lopen we door de kolommen van die rij. De variabele j vertegenwoordigt het huidige kolomnummer;
  • System.out.print(twoDimensionalArray[i][j] + " "): in deze regel gebruiken we System.out.print om onze waarden op één regel weer te geven. Zo werkt het: terwijl we op de 0e rij zijn, lopen we door de kolommen van die rij. Bijvoorbeeld, array[0][1], gevolgd door array[0][2], enzovoort. We gaan door de kolommen zolang j kleiner is dan array[0].length. Zodra we array[0].length bereiken, keren we terug naar de buitenste array en gaan we naar de eerste rij. Bijvoorbeeld, array[0][3] -> array[1][0]. We hebben onze grenzen bereikt en zijn vervolgens overgegaan naar rij 1.
Taak

Veeg om te beginnen met coderen

Bereken de gemiddelde temperatuur voor elke dag van de week op basis van gegevens van meerdere stations.

Je krijgt:

  • 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}

Opdracht:

  1. Schrijf een methode genaamd calculateDailyAverages(int[][] temperatures) die een double[] retourneert.
  2. In deze methode:
    • Loop door elke dag (kolommen van de 2D-array).
    • Initialiseer voor elke dag totalTemp om de som van de temperaturen op te slaan.
    • Gebruik een interne lus om door alle stations (rijen) te gaan.
    • Tel de temperaturen van elk station voor de huidige dag op.
    • Deel het totaal door het aantal stations om het gemiddelde te berekenen.
    • Sla het resultaat op in een array.
  3. Retourneer de array met gemiddelden.

Oplossing

Switch to desktopSchakel over naar desktop voor praktijkervaringGa verder vanaf waar je bent met een van de onderstaande opties
Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 4. Hoofdstuk 5
single

single

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

some-alt