Menu
Coddy logo textTech

Dostęp do elementów tablic 2D

Część sekcji Logika i przepływ sterowania ścieżki Java w Coddy. Lekcja 2 z 59.

Dostęp do elementów w tablicy 2D jest podobny do dostępu do elementów w tablicy 1D, ale zamiast używać pojedynczego indeksu, używasz dwóch indeksów: jednego dla wiersza i jednego dla kolumny. Pamiętaj, że indeksy w Javie zaczynają się od 0, więc pierwszy wiersz ma indeks 0, drugi wiersz ma indeks 1 i tak dalej. Podobnie pierwsza kolumna ma indeks 0, druga kolumna ma indeks 1 i tak dalej.

Aby uzyskać dostęp do elementu, najpierw podaj indeks wiersza, a następnie indeks kolumny, używając następującej składni:

arrayName[rowIndex][columnIndex]

Na przykład, aby uzyskać dostęp do elementu w drugim wierszu (indeks 1) i trzeciej kolumnie (indeks 2) tablicy dwuwymiarowej o nazwie matrix, napisz:

int element = matrix[1][2];

Przypisałoby to zmiennej element wartość elementu z wiersza 1 i kolumny 2.

Uzyskiwanie wymiarów tablicy 2D:

Podobnie jak w przypadku tablic 1D, możesz użyć .length, aby uzyskać wymiary tablicy 2D:

int[][] matrix = {
    {1, 2, 3},
    {4, 5, 6}
};
int numRows = matrix.length;        // Pobiera liczbę wierszy: 2
int numCols = matrix[0].length;     // Pobiera liczbę kolumn: 3
  • matrix.length zwraca liczbę wierszy
  • matrix[0].length zwraca liczbę kolumn w pierwszym wierszu

Sprawdzanie granic:

Przed uzyskaniem dostępu do elementu warto sprawdzić, czy indeksy są prawidłowe:

if (rowIndex >= 0 && rowIndex < matrix.length && 
    colIndex >= 0 && colIndex < matrix[0].length) {
    // Można bezpiecznie uzyskać dostęp do matrix[rowIndex][colIndex]
}
challenge icon

Wyzwanie

Łatwy

Utwórz metodę o nazwie getElement, która przyjmuje trzy argumenty:

  1. Dwuwymiarową tablicę liczb całkowitych o nazwie matrix.
  2. Liczbę całkowitą rowIndex reprezentującą indeks wiersza.
  3. Liczbę całkowitą colIndex reprezentującą indeks kolumny.

Metoda powinna zwrócić element z określonego wiersza i kolumny w tablicy matrix. Jeśli indeks rowIndex lub colIndex wykracza poza zakres (tj. jest mniejszy niż 0 lub większy bądź równy liczbie wierszy lub kolumn), metoda powinna zwrócić -1.

Spróbuj swoich sił

// Napisz kod tylko wewnątrz klasy. Nie pisz main() ani żadnego kodu poza tą klasą.
class GetElement {
    public static int getElement(int[][] matrix, int rowIndex, int colIndex) {
        // Napisz tutaj swój kod
    }
}
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Logika i przepływ sterowania

Poćwicz samodzielnie: Kompilator Java online