Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Iterasjon i todimensjonalt array | Arrayer
Java Grunnleggende
Seksjon 4. Kapittel 5
single

single

Iterasjon i todimensjonalt array

Sveip for å vise menyen

Hvordan iterere i en todimensjonal tabell med en for-løkke?

Å iterere gjennom en todimensjonal tabell kan være litt utfordrende å forstå i starten, så ikke bekymre deg hvis det ikke gir mening med en gang. Dette kapittelet viser hvordan det gjøres og forklarer hvordan det fungerer.

Vi bruker en nestet løkke for å iterere gjennom en todimensjonal tabell, altså en løkke inni en annen. Den ytre løkken itererer over radene, mens den indre løkken itererer over kolonnene. La oss se på syntaksen for å iterere gjennom en todimensjonal tabell ved å bruke eksempeltabellen vi opprettet i forrige kapittel:

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

Her er betydningen av hvert element i kodeeksempelet ovenfor:

  • int[][] twoDimensionalArray =: denne linjen initialiserer et todimensjonalt array;
  • for (int i = 0; i < twoDimensionalArray.length; i++): den første for-løkken itererer over radene i matrisen. Når vi er på første rad, går programmet inn i den nestede løkken, som ikke påvirker den ytre løkken. Variabelen i representerer gjeldende radnummer;
  • for (int j = 0; j < twoDimensionalArray[0].length; j++): den andre for-løkken itererer over kolonnene i matrisen. Når vi er på rad 0, itererer vi gjennom kolonnene i den raden. Variabelen j representerer gjeldende kolonnenummer;
  • System.out.print(twoDimensionalArray[i][j] + " "): i denne linjen bruker vi System.out.print for å vise verdiene våre på én linje. Slik fungerer det: Når vi er på rad 0, itererer vi gjennom kolonnene på den raden. For eksempel, array[0][1], etterfulgt av array[0][2], og så videre. Vi fortsetter gjennom kolonnene så lenge j er mindre enn array[0].length. Når vi når array[0].length, går vi tilbake til det ytre arrayet og flytter til første rad. For eksempel, array[0][3] -> array[1][0]. Vi har nådd grensene våre og har deretter gått videre til rad 1.
Oppgave

Sveip for å begynne å kode

Beregn gjennomsnittstemperaturen for hver ukedag basert på data fra flere stasjoner.

Du får oppgitt:

  • Stasjon 1: {20, 22, 24, 19, 21, 23, 25}
  • Stasjon 2: {18, 20, 22, 19, 20, 22, 24}
  • Stasjon 3: {21, 23, 25, 22, 24, 26, 28}
  • Stasjon 4: {19, 21, 23, 20, 22, 24, 26}

Oppgave:

  1. Skriv en metode kalt calculateDailyAverages(int[][] temperatures) som returnerer en double[].
  2. I denne metoden:
    • Gå gjennom hver dag (kolonner i 2D-arrayet).
    • For hver dag, initialiser totalTemp for å lagre summen av temperaturene.
    • Bruk en indre løkke for å gå gjennom alle stasjoner (rader).
    • Summer temperaturene fra hver stasjon for den aktuelle dagen.
    • Del totalen på antall stasjoner for å finne gjennomsnittet.
    • Lagre resultatet i et array.
  3. Returner arrayet med gjennomsnitt.

Løsning

Switch to desktopBytt til skrivebordet for virkelighetspraksisFortsett der du er med et av alternativene nedenfor
Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 4. Kapittel 5
single

single

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

some-alt