Diziler Java
โก Akฤฑllฤฑ รzet
Diziler Java Bunlar, tek bir veri tรผrรผndeki รถฤeleri bitiลik bellekte depolayan, sabit boyutlu, indeks tabanlฤฑ kapsayฤฑcฤฑlardฤฑr; sabit zamanlฤฑ eriลim, yerleลik sฤฑnฤฑr kontrolรผ ve uzunluk alanฤฑ saฤlayarak รงoฤu standart kรผtรผphane koleksiyonunun temelini oluลtururlar.

Nedir Java Sฤฑralamak?
A Java dizi Sabit boyutlu bir yapฤฑdฤฑr ve tek bir veri tรผrรผnรผn elemanlarฤฑnฤฑ bitiลik bellekte depolar. Her elemana sฤฑfฤฑr tabanlฤฑ bir indeksle ulaลฤฑlฤฑr, bu nedenle ilki ... konumundadฤฑr. 0 ve sonuncusu length - 1Diziler, ลunlardan miras alฤฑr: Object uygulamak Serializable hem de Cloneableve temel veri tiplerini veya nesne referanslarฤฑnฤฑ tutabilir.
Diziler, uzun numaralandฤฑrฤฑlmฤฑล deฤiลken dizilerinin yerini alฤฑr. Altฤฑ baฤฤฑmsฤฑz tamsayฤฑyฤฑ ele alalฤฑm:
x0 = 0; x1 = 1; x2 = 2; x3 = 3; x4 = 4; x5 = 5;
Aynฤฑ altฤฑ deฤer, altฤฑ elemanlฤฑ tek bir dizide yer almaktadฤฑr:
x[0] = 0; x[1] = 1; x[2] = 2; x[3] = 3; x[4] = 4; x[5] = 5;
A dรถngรผ Deฤiลken, parantez iรงindeki dizini belirleyebilir, bรถylece altฤฑ kopyalama iลlemi yerine รผรง satฤฑrda her รถฤe iลlenir:
for (int count = 0; count < 5; count++) { System.out.println(x[count]); }
Dizi Tรผrleri Java
Java Diziler iki ลekilde karลฤฑmฤฑza รงฤฑkar:
- Tek boyutlu dizi: รฤelerin dรผz bir listesi.
- รok boyutlu dizi: Izgaralar ve matrisler iรงin kullanฤฑlan, iรง iรงe geรงmiล dizilerden oluลan bir yapฤฑ.
Dizi Deฤiลkenleri: Tanฤฑmlama, Oluลturma ve Baลlatma
Dizi kullanmak bir รผรง aลamalฤฑ iลlem: bildirmek, oluลturmak newArdฤฑndan baลlatฤฑn.
1) Diziyi tanฤฑmlayฤฑn
Sรถzdizimi:
<elementType>[] <arrayName>;
or (Eski C stili biรงim, hala geรงerli):
<elementType> <arrayName>[];
รrnek:
int[] intArray; // canonical form: brackets on the type int intArray2[]; // legacy C-style form, discouraged in new code
2) Diziyi Oluลturun
Sรถzdizimi:
arrayName = new dataType[size];
รrnek:
intArray = new int[10]; // defines that intArray will store 10 integer values
Beyan ve inลaat bir arada:
int[] intArray = new int[10];
3) Diziyi Baลlatฤฑn
intArray[0] = 1; // assigns 1 to the first element (index 0) intArray[1] = 2; // assigns 2 to the second element (index 1)
Tek adฤฑmda tanฤฑmlayฤฑn ve baลlatฤฑn. Dizi sabiti kullanarak:
int[] intArray = {1, 2, 3, 4}; // initialises an integer array of length 4 where the first element is 1, // the second element is 2, and so on.
ฤฐlk Dizi Programฤฑ Java
) 1 Adฤฑm Aลaฤฤฑdaki kodu bir dรผzenleyiciye kopyalayฤฑn:
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; } }
) 2 Adฤฑm Kodu kaydedin, derleyin ve รงalฤฑลtฤฑrฤฑn. รฤฑktฤฑyฤฑ gรถzlemleyin.
Beklenen รงฤฑktฤฑ:
array[0] = 1 array[1] = 2 array[2] = 3 array[3] = 4 array[4] = 5 array[5] = 6 array[6] = 7
) 3 Adฤฑm If x Bu bir dizi referansฤฑdฤฑr. x.length Yuva sayฤฑsฤฑnฤฑ dรถndรผrรผr. ฤฐlk yorum satฤฑrฤฑndaki yorumu kaldฤฑrฤฑn ve tekrar รงalฤฑลtฤฑrฤฑn:
Length of Array = 7
) 4 Adฤฑm C'den farklฤฑ olarak, Java Her dizi eriลiminde sฤฑnฤฑr kontrolรผ yapar. ฤฐkinci yorum satฤฑrฤฑndaki yorumu kaldฤฑrฤฑn ve tekrar รงalฤฑลtฤฑrฤฑn:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 8 at ArrayDemo.main(ArrayDemo.java:11) Command exited with non-zero status 1
) 5 Adฤฑm JVM hata veriyor ArrayIndexOutOfBoundsExceptionC dilinde aynฤฑ eriลim, baลarฤฑsฤฑz olmak yerine bitiลik bellekten anlamsฤฑz veriler dรถndรผrรผrdรผ.
Java Dizi: Referansla Geรงirme
Diziler metotlara referans yoluyla iletilir. Metot, referansฤฑn bir kopyasฤฑnฤฑ alฤฑr, bu nedenle metot iรงinde yapฤฑlan eleman deฤiลiklikleri รงaฤฤฑran tarafฤฑndan gรถrรผlebilir.
รrnek: Diziler referans yoluyla aktarฤฑlฤฑr.
) 1 Adฤฑm Aลaฤฤฑdaki kodu bir dรผzenleyiciye kopyalayฤฑn:
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]); } }
) 2 Adฤฑm Kodu kaydedin, derleyin ve รงalฤฑลtฤฑrฤฑn. รฤฑktฤฑyฤฑ gรถzlemleyin.
Beklenen รงฤฑktฤฑ:
Before Function Call Apple After Function Call Changed
รok Boyutlu Dizilerde Java
รok boyutlu diziler, dizilerin dizileridir. Her boyut iรงin ayrฤฑ bir kรถลeli parantez kรผmesi ekleyin. Dรถrt satฤฑr ve beล sรผtundan oluลan 2 boyutlu bir tamsayฤฑ tablosu oluลturmak iรงin:
int[][] twoD = new int[4][5];
รncelikle yalnฤฑzca ilk (en soldaki) boyutu belirlemeniz yeterlidir. Kalan boyutlar ayrฤฑ ayrฤฑ tahsis edilebilir ve her satฤฑrฤฑn kendi uzunluฤu olabilir. Java 2 boyutlu diziler doฤru dรผzensiz diziler.
รrnek:
public class Guru99 { public static void main(String[] args) { // Create a 2-dimensional array with 4 rows and 4 columns. int[][] twoD = new int[4][4]; // Assign three elements to it. twoD[0][0] = 1; twoD[1][1] = 2; twoD[3][2] = 3; System.out.print(twoD[0][0] + " "); } }
Beklenen รงฤฑktฤฑ:
1
