Diziler bir çok programlama dilinin temel kavramlarından bir tanesi de dizilerdir. Java dilinde de diziler önemli bir yere sahiptir. Bu yazıda Java’da dizi kullanımı detaylı bilgi sahibi olacaksınız.
Java Dizi Nedir?
Java Dizi, tek bir türden sabit sayıda değeri tutan bir kapsayıcı nesnedir. Bir dizinin uzunluğu, dizi oluşturulduğunda belirlenir. Oluşturulduktan sonra uzunluğu sabittir.
Java Dizilerde Önemli Noktalar
- Java’da tüm diziler dinamik olarak tahsis edilir. (Aşağıda açıklanmıştır)
- Diziler ardışık bellek konumlarında saklanır.
- Diziler Java’da nesneler olduğundan, uzunluklarını nesne özelliği uzunluğu kullanarak bulabiliriz. Bu, sizeof kullanarak uzunluğu bulduğumuz C/C++’dan farklıdır.
- Bir Java dizi değişkeni, veri türünden sonra [] ile diğer değişkenler gibi bildirilebilir.
- Dizideki değişkenler sıralanmıştır ve her birinin 0’dan başlayan bir dizini(index) vardır.
- Java dizisi ayrıca statik alan, yerel değişken veya metot parametresi olarak da kullanılabilir.
- Bir dizinin boyutu, long değil, int veya short değerle belirtilmelidir.
- Bir dizi türünün doğrudan üst sınıfı Object‘tir.
- Her dizi türü, Cloneable ve Java.io.Serializable arabirimlerini uygular.
- Dizilerin bu şekilde depolanması, bir dizinin [Rastgele Erişimi Destekle] öğelerine rastgele erişmemize yardımcı olur.
- Dizinin boyutu değiştirilemez (bir kez başlatıldıktan sonra). Ancak, başka bir diziye işaret etmek için bir dizi başvurusu yapılabilir.
İlginizi çekebilir: Java Dizi Örnekleri
Tek boyutlu dizi bildiriminin genel biçimi şöyledir:
1 2 3 4 5 6 7 | tipi degisken_adi[]; yada tipi[] degisken_adi; |
Bir dizi bildiriminin iki bileşeni vardır: tip ve değiken adı. Tip, dizinin eleman türünü bildirir. Öğe türü, diziyi oluşturan her öğenin veri türünü belirler. Bir int dizisi gibi, char, float, double, vb. gibi başka ilkel veri türleri veya kullanıcı tanımlı veri türleri (bir sınıfın nesneleri) dizisini de oluşturabiliriz. Böylece, dizinin eleman tipi, dizinin ne tür veri tutacağını belirler.
Tam sayı türünde dizi tanımlama
1 2 3 4 5 6 | // her ikisi de doğru tanımlama int sayilar[]; //yada int[] sayilar; |
String türünde dizi tanımlama
1 2 3 4 5 6 7 | // her ikisi de doğru tanımlama String[] kisiler; //yada String kisiler[]; |
Java’da Dizi Örnekleme
Bir dizi bildirildiğinde, yalnızca bir dizinin referansı oluşturulur. Dizi oluşturmak veya diziye bellek vermek için şöyle bir dizi oluşturmalısınız. Tek boyutlu diziler için geçerli olan genel biçimi şu şekilde görünür.
1 2 3 4 5 | String[] kisiler = new String[5]; int[] sayilar = new int[10]; |
Not :
new tarafından atanan dizideki öğeler otomatik olarak sıfıra (sayısal türler için), false (boolean için) veya null (referans türleri için) olarak başlatılacaktır.
Bir dizi elde etmek iki adımlı bir işlemdir. İlk olarak, istenen dizi tipinde bir değişken tanımlamanız gerekir. İkinci olarak, diziyi tutacak belleği yeni kullanarak ayırmanız ve dizi değişkenine atamanız gerekir. Böylece, Java’da tüm diziler dinamik olarak tahsis edilir.
Dizi Sabiti
Dizinin boyutunun ve dizinin değişkenlerinin zaten bilindiği bir durumda, dizi değişmezleri kullanılabilir.
1 2 3 | int[] sayilar = new int[]{10,20,30,40,50,60,70,80,90,100}; |
Java Dizi Öğelerine Erişme (for döngüsü ile)
Dizideki her öğeye kendi dizini aracılığıyla erişilir. İndeks 0 ile başlar ve (toplam dizi boyutu)-1 ile biter. Dizinin tüm öğelerine Java for Loop kullanılarak erişilebilir.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | class Main { public static void main(String[] args) { int[] sayilar = new int[]{10,20,30,40,50,60,70,80,90,100}; for (int i = 0; i < sayilar.length; i++){ System.out.println("Index " + i + ", Değer "+ sayilar[i]); } } } |
Dizi Öğelerini Değiştirme
Dizideki her bir öğeye index numaralarını kullanarak erişip değişiklik yapabiliriz. Dizinin ilk index değeri 0, son index değeri ise dizi uzunluğu -1 olarak belirlenir.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | class Main { public static void main(String[] args) { int[] sayilar = new int[5]; sayilar[0] = 10; sayilar[1] = 20; sayilar[2] = 30; sayilar[3] = 40; sayilar[4] = 50; for (int i = 0; i < sayilar.length; i++){ System.out.println("Index " + i + ", Değer "+ sayilar[i]); } } } |
Nesne Dizileri
Aşağıdaki şekilde ilkel tip veri öğeleri ile bir nesne dizisi oluşturulur.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | class Main { public static void main(String[] args) { Ogrenci[] ogrenciler = new Ogrenci[3]; ogrenciler[0] = new Ogrenci(123, "Hayri"); ogrenciler[1] = new Ogrenci(75, "Ahmet"); ogrenciler[2] = new Ogrenci(25, "Ufuk"); for (int i = 0; i < ogrenciler.length; i++) { System.out.println("Numara " + ogrenciler[i].numara + ", Ad " + ogrenciler[i].ad); } } } class Ogrenci { public int numara; public String ad; Ogrenci(int numara, String ad) { this.numara = numara; this.ad = ad; } } |
Çıktı:
1 2 3 4 5 | Numara 123, Ad Hayri Numara 75, Ad Ahmet Numara 25, Ad Ufuk |
Daha fazla dizi örneği için Java Dizi Örnekleri yazısını inceleyebilirsiniz.
[…] İlginizi Çekebilir: Java Dizi Kullanımı […]