Tablica jednowymiarowa jest uporządkowanym zbiorem elementów tego samego typu. Elementy tablicy są numerowane (indeksowane). Pierwszy element ma numer .
Przykład tablicy jednowymiarowej, przechowującej liczb całkowitych z przedziału 1, 10:
Więcej na temat tablic jednowymiarowych znajdziesz w e‑materiale: Tablice jednowymiaroweP2NVb1Ot0Tablice jednowymiarowe.
Tablica wielowymiarowa
Tablica wielowymiarowa to tablica tablic, czyli tablica, której elementami są inne tablice. To, w jakim stopniu te tablice są „zagnieżdżone”, ma wpływ na wymiar danej tablicy. I tak np. tablica dwuwymiarowa to tablica, której elementami są tablice jednowymiarowe, tablica trójwymiarowa to tablica, której elementami są tablice dwuwymiarowe itd.
Oto ułożenie elementów w tablicy dwuwymiarowej dane o rozmiarze na :
W każdej komórce głównej tablicy jednowymiarowej (-elementowej) znajduje się kolejna tablica jednowymiarowa (-elementowa).
Nawigacja po takiej tablicy wygląda następująco:
Podajemy numer wiersza, czyli decydujemy, którą zagnieżdżoną tablicę chcemy wybrać.
Następnie podajemy numer kolumny, czyli wybieramy konkretną komórkę (przechowywaną wartość) wybranej tablicy zagnieżdżonej.
Podając dane[3][2], wybieramy elementy znajdujące się w wierszu o indeksie trzy oraz kolumnie o indeksie dwa. W przypadku przedstawionej tablicy będzie to wartość .
Tworzenie tablic w języku Java
Tablica jednowymiarowa
Krótkie przypomnienie, jak tworzymy tablice w języku Java:
Linia 1. public class Main.
Linia 2. otwórz nawias klamrowy.
Linia 3. public static void main otwórz nawias okrągły String otwórz nawias kwadratowy zamknij nawias kwadratowy args zamknij nawias okrągły.
Linia 4. otwórz nawias klamrowy.
Linia 5. prawy ukośnik asterysk Oto schemat tworzenia tablicy jednowymiarowej.
Linia 6. przechowującej 10 liczb całkowitych asterysk prawy ukośnik.
Linia 8. int otwórz nawias kwadratowy zamknij nawias kwadratowy tablicaJednowymiarowa znak równości new int otwórz nawias kwadratowy 10 zamknij nawias kwadratowy średnik.
Linia 9. zamknij nawias klamrowy.
Linia 10. zamknij nawias klamrowy.
Tablica dwuwymiarowa
Jak już wspomnieliśmy, tablica dwuwymiarowa to technicznie tablica jednowymiarowa przechowująca inne tablice jednowymiarowe. Stwórzmy zatem tablicę dwuwymiarową, w której znajduje się sześć tablic przechowujących po pięć elementów.
Sposób :
Linia 1. public class Main.
Linia 2. otwórz nawias klamrowy.
Linia 3. public static void main otwórz nawias okrągły String otwórz nawias kwadratowy zamknij nawias kwadratowy args zamknij nawias okrągły.
Linia 4. otwórz nawias klamrowy.
Linia 5. int otwórz nawias kwadratowy zamknij nawias kwadratowy otwórz nawias kwadratowy zamknij nawias kwadratowy tablicaDwuwymiarowa znak równości new int otwórz nawias kwadratowy 6 zamknij nawias kwadratowy otwórz nawias kwadratowy 5 zamknij nawias kwadratowy średnik.
Linia 6. zamknij nawias klamrowy.
Linia 7. zamknij nawias klamrowy.
Sposób :
Linia 1. public class Main.
Linia 2. otwórz nawias klamrowy.
Linia 3. public static void main otwórz nawias okrągły String otwórz nawias kwadratowy zamknij nawias kwadratowy args zamknij nawias okrągły.
Linia 4. otwórz nawias klamrowy.
Linia 5. int otwórz nawias kwadratowy zamknij nawias kwadratowy otwórz nawias kwadratowy zamknij nawias kwadratowy tablicaDwuwymiarowa znak równości new int otwórz nawias kwadratowy 6 zamknij nawias kwadratowy otwórz nawias kwadratowy zamknij nawias kwadratowy średnik prawy ukośnik prawy ukośnik tutaj deklarujemy przecinek że tablica główna ma przechowywać 6 tablic podrzędnych.
Linia 7. for otwórz nawias okrągły int i znak równości 0 średnik i otwórz nawias ostrokątny znak równości tablicaDwuwymiarowa kropka length minus 1 średnik i plus plus zamknij nawias okrągły.
Linia 8. otwórz nawias klamrowy.
Linia 9. tablicaDwuwymiarowa otwórz nawias kwadratowy i zamknij nawias kwadratowy znak równości new int otwórz nawias kwadratowy 5 zamknij nawias kwadratowy średnik prawy ukośnik prawy ukośnik tutaj deklarujemy przecinek że każda tablica podrzędna ma docelowo przechowywać 5 elementów.
Linia 10. zamknij nawias klamrowy.
Linia 11. zamknij nawias klamrowy.
Linia 12. zamknij nawias klamrowy.
Oba zaprezentowane sposoby są poprawne. W dalszej części materiału będziemy korzystać ze sposobu .
W takim przypadku tablica prezentuje się następująco (w języku Java jej wartości są domyślnie ustawiane na ):
Stwórzmy tablicę dwuwymiarową o wymiarach m × n i wypełnijmy ją kolejnymi liczbami naturalnymi. Wartości m oraz n podaje użytkownik.
Na początek utworzymy odpowiedni szkielet tablicy.
Linia 1. import java kropka util kropka Scanner średnik.
Linia 3. public class Main.
Linia 4. otwórz nawias klamrowy.
Linia 5. public static void main otwórz nawias okrągły String otwórz nawias kwadratowy zamknij nawias kwadratowy args zamknij nawias okrągły.
Linia 6. otwórz nawias klamrowy.
Linia 7. Scanner scanner znak równości new Scanner otwórz nawias okrągły System kropka in zamknij nawias okrągły średnik.
Linia 8. int m znak równości Integer kropka parseInt otwórz nawias okrągły scanner kropka next otwórz nawias okrągły zamknij nawias okrągły zamknij nawias okrągły średnik.
Linia 9. int n znak równości Integer kropka parseInt otwórz nawias okrągły scanner kropka next otwórz nawias okrągły zamknij nawias okrągły zamknij nawias okrągły średnik.
Linia 11. int otwórz nawias kwadratowy zamknij nawias kwadratowy otwórz nawias kwadratowy zamknij nawias kwadratowy tablicaLiczb znak równości new int otwórz nawias kwadratowy m zamknij nawias kwadratowy otwórz nawias kwadratowy n zamknij nawias kwadratowy średnik.
Linia 12. zamknij nawias klamrowy.
Linia 13. zamknij nawias klamrowy.
Tablica jest już utworzona, więc możemy teraz przypisać do niej wartości liczbowe (używamy do tego zagnieżdżonej pętli for).
Linia 1. import java kropka util kropka Scanner średnik.
Linia 3. public class Main.
Linia 4. otwórz nawias klamrowy.
Linia 5. public static void main otwórz nawias okrągły String otwórz nawias kwadratowy zamknij nawias kwadratowy args zamknij nawias okrągły.
Linia 6. otwórz nawias klamrowy.
Linia 7. Scanner scanner znak równości new Scanner otwórz nawias okrągły System kropka in zamknij nawias okrągły średnik.
Linia 8. int m znak równości Integer kropka parseInt otwórz nawias okrągły scanner kropka next otwórz nawias okrągły zamknij nawias okrągły zamknij nawias okrągły średnik.
Linia 9. int n znak równości Integer kropka parseInt otwórz nawias okrągły scanner kropka next otwórz nawias okrągły zamknij nawias okrągły zamknij nawias okrągły średnik.
Linia 11. int otwórz nawias kwadratowy zamknij nawias kwadratowy otwórz nawias kwadratowy zamknij nawias kwadratowy tablicaLiczb znak równości new int otwórz nawias kwadratowy m zamknij nawias kwadratowy otwórz nawias kwadratowy n zamknij nawias kwadratowy średnik.
Linia 12. int liczba znak równości 0 średnik.
Linia 14. for otwórz nawias okrągły int i znak równości 0 średnik i otwórz nawias ostrokątny znak równości tablicaLiczb kropka length minus 1 średnik i plus plus zamknij nawias okrągły.
Linia 15. otwórz nawias klamrowy.
Linia 16. for otwórz nawias okrągły int j znak równości 0 średnik j otwórz nawias ostrokątny znak równości tablicaLiczb otwórz nawias kwadratowy i zamknij nawias kwadratowy kropka length minus 1 średnik j plus plus zamknij nawias okrągły.
Linia 17. otwórz nawias klamrowy.
Linia 18. tablicaLiczb otwórz nawias kwadratowy i zamknij nawias kwadratowy otwórz nawias kwadratowy j zamknij nawias kwadratowy znak równości liczba średnik.
Linia 19. liczba plus plus średnik.
Linia 20. zamknij nawias klamrowy.
Linia 21. zamknij nawias klamrowy.
Linia 22. zamknij nawias klamrowy.
Linia 23. zamknij nawias klamrowy.
Ważne!
Zapis liczba++ oznacza skrócony zapis inkrementacjiinkrementacjainkrementacji.
Stworzona tablica dla m = 5 oraz n = 5 prezentuje się następująco:
Napisz program, który doda do siebie dwie tablice o rozmiarze m × n wypełnione liczbami całkowitymi. Przetestuj jego działanie dla tablicy o kolumnach i wierszach.
Specyfikacja problemu:
Dane:
n – liczba kolumn; liczba naturalna
m – liczba wierszy; liczba naturalna
a – tablica liczb całkowitych o n kolumnach i m wierszach
b – tablica liczb całkowitych o n kolumnach i m wierszach
Wynik:
Na standardowym wyjściu wyświetlona jest tablica będąca sumą tablic a i b.
Ważne!
W filmie z rozwiązaniem zadania pada pojęcie macierz. W matematyce macierzą nazywamy układ liczb zapisany w postaci prostokątnej tablicy. Dodawanie macierzy wykonuje się dla macierzy o tych samych wymiarach. Polega ono na dodaniu do siebie elementów dwóch macierzy o tych samych indeksach.
R1XV4mkzkVqUa
Polecenie 1
Porównaj swoje rozwiązanie z przedstawionym w filmie.
RdW4FUz4mwmLR
R11xn07Yqw6tO
R1YYqXHjasgpj
Słownik
inkrementacja
inkrementacja
operacja powodująca zwiększenie danej wartości o ; przeciwieństwem inkrementacji jest dekrementacja, czyli zmniejszenie wartości o