Tablice

Tablice jednowymiarowe

Deklaracja:

int[] t = {3,5,7};

Deklaracja alternatywna:

int[] t = new int[3];
    
t[0] = 3; t[1] = 5; t[2] = 7;

Ilustracja:

       0  1  2
t --> [3][5][7]

Odczyt i zapis z tablicy:

int wyraz = t[1]; // wyraz = t[1] = 5 // odczyt
t[1] = wyraz;     // t[1] = wyraz = 5 // zapis

Wyjaśnienia:

t[i] - i-ty wyraz tablicy czyli zawartość i-tej komórki

i - indeks komórki tablicy

t.length - liczba komórek tablicy
t.length-1 - indeks ostatniej komórki tablicy

Wybrane własności:

t[0] == 3   true
t[1] == 5   true
t[2] == 9   false

t.length = 3

t.length-1 = 2

Uwagi

Tablice jednowymiarowe możemy utożsamiać z wektorami.

/* Tablica.java */

public class Tablica
{
  public static void main(String[] args)
  {
    // tworzymy n-elementową tablicę liczb całkowitych typu int
        
    int n = 3;
    int[] tab = new int[n];
    
    // określamy wartości w komórkach tablicy
    
    tab[0] = 5;
    tab[1] = 7;
    tab[2] = 9;
    
    // wypisujemy wartości z komórek tablicy
    
    System.out.println("Liczba elementow: " + tab.length);
    System.out.println("Pierwszy element: " + tab[0]);
    System.out.println("Drugi element: " + tab[1]);
    System.out.println("Ostatni element: " + tab[tab.length-1]);
  }
}
Liczba elementow: 3
Pierwszy element: 5
Drugi element: 7
Ostatni element: 9
Press any key to continue...

Zadanie Dokonaj analizy programu Tablica.

n = 3
         0  1  2
tab --> [0][0][0]
                         0  1  2
tab[0] = 5   // tab --> [5][0][0]
tab[1] = 7   // tab --> [5][7][0]
tab[2] = 9   // tab --> [5][7][9]

"Liczba elementow: 3"   // tab.length = 3
"Pierwszy element: 5"   // tab[0] = 5
"Drugi element: 7"      // tab[1] = 7
"Ostatni element: 9"    // tab[2] = 9
/* WypiszTablice1.java */

public class WypiszTablice1
{
  public static void main(String[] args)
  {
    int[] tab = {3,4,5,10,18,12};

    for (int i = 0; i < tab.length; i++)
    {
      System.out.print(tab[i] + " ");
    }

    System.out.println();
  }
}
3 4 5 10 18 12
Press any key to continue...

Zadanie Dokonaj analizy programu WypiszTablice1.

         0  1  2  3   4   5
tab --> [3][4][5][10][18][12]

i = 0
0 < 6   '3 '    i = 1
1 < 6   '4 '    i = 2
2 < 6   '5 '    i = 3
3 < 6   '10 '   i = 4
4 < 6   '18 '   i = 5
5 < 6   '12 '   i = 6
6 < 6   false

""
/* WypiszTablice2.java */

public class WypiszTablice2
{
  public static void main(String[] args)
  {
    int[] tab1 = {3,4,5,10,18,12};
    int[] tab2 = {9,3,4,5,7};

    wypisz(tab1);
    wypisz(tab2);
  }

  static void wypisz(int[] tab)
  {
    for (int i = 0; i < tab.length; i++)
    {
      System.out.print(tab[i] + " ");
    }

    System.out.println();
  }
}
3 4 5 10 18 12
9 3 4 5 7
Press any key to continue...

Zadanie Dokonaj analizy programu WypiszTablice2.

          0  1  2  3   4   5
tab1 --> [3][4][5][10][18][12]

          0  1  2  3  4
tab2 --> [9][3][4][5][7]

* wypisz(tab1)

            0  1  2  3   4   5
  tab1 --> [3][4][5][10][18][12]

  i = 0
  0 < 6   '3 '    i = 1
  1 < 6   '4 '    i = 2
  2 < 6   '5 '    i = 3
  3 < 6   '10 '   i = 4
  4 < 6   '18 '   i = 5
  5 < 6   '12 '   i = 6
  6 < 6   false
  
  ""
  
* wypisz(tab2)

            0  1  2  3  4
  tab2 --> [9][3][4][5][7]

  i = 0
  0 < 5   '9 '   i = 1
  1 < 5   '3 '   i = 2
  2 < 5   '4 '   i = 3
  3 < 5   '5 '   i = 4
  4 < 5   '7 '   i = 5
  5 < 5   false
  
  ""

Strona główna