Tablice w Java
Czym jest Java Tablice?
Java Szyk to bardzo powszechny typ struktury danych, ktรณry zawiera wszystkie wartoลci danych tego samego typu. Elementy danych umieszczone w tablicy nazywane sฤ elementami, a pierwszy element tablicy zaczyna siฤ od indeksu zerowego. Tablice dziedziczฤ klasฤ obiektรณw i implementujฤ interfejsy, ktรณre moลผna serializowaฤ i klonowaฤ. Moลผemy przechowywaฤ prymitywne wartoลci lub obiekty w tablicy.
Krรณtko mรณwiฤ c, jest to konstrukcja programistyczna, ktรณra pomaga to zastฤ piฤ
x0=0; x1=1; x2=2; x3=3; x4=4; x5=5;
z tym โฆ
x[0]=0; x[1]=1; x[2]=2; x[3]=3; x[4]=4; x[5]=5;
pomaga to w tym, ลผe zmienna moลผe w ลatwy sposรณb odwoลywaฤ siฤ do indeksu (liczby w nawiasie []). looping.
for(count=0; count<5; count++) {
System.out.println(x[count]);
}
Typy tablic w Java
Istniejฤ dwa typy tablic.
- Tablica jednowymiarowa
- Tablica wielowymiarowa
Zmienne tablicowe
Uลผycie tablicy w programie to a 3-etapowy proces -
1) Deklarowanie tablicy
2) Konstruowanie tablicy
3) Zainicjuj tablicฤ
1) Deklarowanie tablicy
Skลadnia
<elementType>[] <arrayName>;
or
<elementType> <arrayName>[];
Przykลad:
int intArray[]; // Defines that intArray is an ARRAY variable which will store integer values int []intArray;
2) Konstruowanie tablicy
arrayname = new dataType[]
Przykลad:
intArray = new int[10]; // Defines that intArray will store 10 integer values
Deklaracja i konstrukcja poลฤ czone
int intArray[] = new int[10];
3) Zainicjuj tablicฤ
intArray[0]=1; // Assigns an integer value 1 to the first element 0 of the array intArray[1]=2; // Assigns an integer value 2 to the second element 1 of the array
Deklarowanie i inicjowanie tablicy
[] = {};
Przykลad:
int intArray[] = {1, 2, 3, 4};
// Initilializes an integer array of length 4 where the first element is 1 , second element is 2 and so on.
Pierwszy program tablicowy
Krok 1) Skopiuj poniลผszy kod do edytora.
class ArrayDemo{
public static void main(String args[]){
int array[] = new int[7];
for (int count=0;count<7;count++){
array[count]=count+1;
}
for (int count=0;count<7;count++){
System.out.println("array["+count+"] = "+array[count]);
}
//System.out.println("Length of Array = "+array.length);
// array[8] =10;
}
}
Krok 2) Zapisz, skompiluj i uruchom kod. Obserwuj wynik
Oczekiwany wynik:
array[0] = 1 array[1] = 2 array[2] = 3 array[3] = 4 array[4] = 5 array[5] = 6 array[6] = 7
Krok 3) Jeลli x jest odwoลaniem do tablicy, x.dลugoลฤ poda dลugoลฤ tablicy.
Odkomentuj wiersz nr 10. Zapisz, skompiluj i uruchom kod. Obserwuj wynik
Length of Array = 7
Krok 4) W odrรณลผnieniu od C. Java sprawdza granicฤ tablicy podczas uzyskiwania dostฤpu do jej elementu. Java nie pozwoli programiลcie przekroczyฤ swojej granicy.
Odkomentuj wiersz nr 11. Zapisz, skompiluj i uruchom kod. Obserwuj wynik
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 8
at ArrayDemo.main(ArrayDemo.java:11)
Command exited with non-zero status 1
Krok 5) Zgลaszany jest wyjฤ tek ArrayIndexOutOfBoundsException. W przypadku C ten sam kod pokazywaลby pewnฤ wartoลฤ ลmieciowฤ .
Java Tablica: Przekaลผ przez odniesienie
Tablice sฤ
przekazywane do funkcji przez referencjฤ lub jako wskaลบnik do
oryginalny. Oznacza to wszystko, co zrobisz z tablicฤ
wewnฤ
trz
funkcja wpลywa na oryginaล.
Przykลad: Aby zrozumieฤ, Array sฤ przekazywane przez referencjฤ
Krok 1) Skopiuj poniลผszy kod do edytora
class ArrayDemo {
public static void passByReference(String a[]){
a[0] = "Changed";
}
public static void main(String args[]){
String []b={"Apple","Mango","Orange"};
System.out.println("Before Function Call "+b[0]);
ArrayDemo.passByReference(b);
System.out.println("After Function Call "+b[0]);
}
}
Krok 2) Zapisz, skompiluj i uruchom kod. Obserwuj wynik
Oczekiwany wynik:
Before Function Call Apple After Function Call Changed
Tablice wielowymiarowe
Tablice wielowymiarowe sฤ w rzeczywistoลci tablicami tablic.
Aby zadeklarowaฤ tablicฤ wielowymiarowฤ zmienna, okreลl kaลผdy dodatkowy indeks za pomocฤ innych nawiasรณw kwadratowych.
Ex: int twoD[ ][ ] = new int[4][5] ;
Kiedy alokujesz pamiฤฤ dla tablicy wielowymiarowej, wystarczy okreลliฤ pamiฤฤ dla pierwszego (skrajnie lewego) wymiaru.
Pozostaลe wymiary moลผesz przydzieliฤ osobno.
In Java, dลugoลฤ kaลผdej tablicy w tablicy wielowymiarowej jest pod Twojฤ kontrolฤ .
Przykลad
public class Guru99 {
public static void main(String[] args) {
// Create 2-dimensional array.
int[][] twoD = new int[4][4];
// Assign three elements in it.
twoD[0][0] = 1;
twoD[1][1] = 2;
twoD[3][2] = 3;
System.out.print(twoD[0][0] + " ");
}
}
Oczekiwany wynik:
1
