I_R_W13A_M08_JAVA Tablice praktyczne przykłady
Czym jest tablica?
Podstawowym założeniem, na jakim opiera się koncepcja tablicy, jest możliwość przechowywania wielu wartości tego samego typu. Przypuśćmy, że chcemy w naszym programie przechowywać wyniki pomiarów temperatury powietrza z ostatnich dwóch tygodni. Pierwsze, co w tej sytuacji przychodzi na myśl, to po prostu zdefiniowanie osobnych zmiennych. A gdybyśmy chcieli ulepszyć nasz program i przechowywać wyniki pobrane o trzech różnych porach dnia? Wtedy potrzebowalibyśmy już zmiennych.
W ten sposób nasz program stawałby się coraz bardziej zagmatwany, a definiowanie kolejnych zmiennych byłoby niepotrzebnie pracochłonne. Natomiast gdybyśmy użyli tablicy, bylibyśmy w stanie zadeklarować dowolną liczbę zmiennych tego samego typu przy pomocy jednej instrukcji. Dodatkowo wykorzystując indeksowanie, moglibyśmy wygodnie je modyfikować.
Aby lepiej zrozumieć tę koncepcję, przeanalizujmy poniższy pseudokod. Załóżmy przy tym, że pierwszy element tablicy ma indeks .
Tablica jest zazwyczaj strukturą statyczną i jej rozmiar nie zmienia się w trakcie działania programu, jednak istnieją również warianty dynamiczne. Przy deklaracji statycznej tablicy należy określić, ile elementów ma ona przechowywać, czyli podać jej rozmiar. Aby odwołać się do konkretnego elementu, wykorzystujemy indeksowanie, czyli odwołanie postaci nazwa_tablicy[indeks]. Dzięki temu jesteśmy w stanie w wygodny sposób modyfikować i wykorzystywać zawartość tablicy.

Niestety, tablice nie są w pełni zunifikowane – w zależności od wykorzystywanego języka programowania, do pierwszej komórki tablicy odwołujemy się, stosując indeks bądź . Co za tym idzie, podczas pisania pseudokodu warto zaznaczyć, z jakiego typu indeksowania korzystamy.
Tablica wielowymiarowa
Załóżmy, że chcemy w naszym programie zaimplementować symulację gry w szachy. Plansza do gry jest kwadratem zbudowanym z pól, po których mogą poruszać się figury. Do przechowywania informacji o rodzaju figury i jej pozycji na szachownicy moglibyśmy wykorzystywać więc -elementową tablicę jednowymiarową, lecz indeksowanie byłoby tu dosyć problematyczne.
O wiele lepszym pomysłem w takiej sytuacji będzie użycie tablicy dwuwymiarowej. Jej zadeklarowanie jest równie proste, co w przypadku jednego wymiaru. Spójrzmy na poniższy przykład:
Aby odwołać się do konkretnej wartości, wykorzystujemy następujący zapis: nazwa_tablicy[indeks_wiersza][indeks_kolumny].

Aby zadeklarować tablicę o dowolnej liczbie wymiarów wystarczy dodać odpowiednią liczbę nawiasów. Np. za zadeklarowanie tablicy czterowymiarowej w pseudokodzie odpowiadałaby instrukcja: tab[3][3][4][4].
Przykładowe zastosowania tablic
Tablice są bardzo uniwersalną strukturą danych, dzięki czemu mogą być wykorzystywane na różne sposoby. Jednym z takich zastosowań jest reprezentacja tekstu w postaci tablicy znaków. Można też za pomocą tablicy dwuwymiarowej reprezentować połączenia między wierzchołkami grafu. Nazywamy ją macierzą sąsiedztwa.

Poza tym tablice nie ograniczają się do przechowywania podstawowych typów danych takich jak liczby całkowite lub zmiennoprzecinkowe. Możemy również utworzyć tablicę zawierającą struktury albo chociażby listy. Mamy dużą dowolność.
Słownik
dwuwymiarowa tablica kwadratowa, w której wartość przechowywana w wierszu i oraz kolumnie j oznacza liczbę połączeń w grafie wychodzących z wierzchołka i do wierzchołka j