java array declare
Bu Kapsamlı Öğretici, Basit Kod Örneklerinin Yardımıyla Java'da Değerlerle Yeni Bir Dizi Bildirmenin, Oluşturmanın ve Başlatmanın Çeşitli Yollarını Açıklar:
Önceki eğitimimizde, bu eğitim dizisinde ayrıntılı olarak öğreneceğimiz dizilerle ilişkili farklı kavramların yanı sıra Java'daki dizilerin temellerini tartıştık.
Dizilerle ilgili ilk ve en önemli adım, onları oluşturmaktır. Dizilerde ne tür elemanlar ve kaç eleman depolayacağınızın farkında olmalısınız. Bir dizi bildirdikten sonra, bazı başlangıç değerleri sağlayarak onları başlatmak isteyebilirsiniz ve bunu yapmak için çeşitli yöntemler vardır.
Bu nedenle, bu eğitimde, diğer kavramlara geçmeden önce dizileri oluşturmaya ve başlatmaya odaklanacağız.
Ne öğreneceksin:
- Java'da Dizi Nasıl Bildirilir?
- Bir Java Dizisi Oluşturun ve Başlatın
- Dizi Öğelerini Başlatma ve Erişme
- Sıkça Sorulan Sorular
- Sonuç
- Önerilen Kaynaklar
Java'da Dizi Nasıl Bildirilir?
Java'da, tek boyutlu bir dizi aşağıdaki yollardan biriyle bildirilir:
data_type() array_name; {or} data_type array_name(); {or} data_type ()array_name;
Burada 'veri_türü', dizinin tutacağı veri türünü belirtir. 'Veri_türü', ilkel bir veri türü veya türetilmiş herhangi bir tür olabilir.
Örneğin, bir dizi dizim türünün tamsayı aşağıdaki gibi bildirilir:
int () myarray;
VEYA
int () myarray;
VEYA
int myarray ();
Bu, myarray dizisinin int veri türünün öğelerini tutacağı anlamına gelir.
Java'daki diziler dinamik olarak tahsis edildiğinden, bildirimle dizinin herhangi bir boyutunu veya boyutunu belirtmediğimizi unutmayın. Yukarıdaki bildirim, derleyiciye, içinde tamsayı türü değerlerini depolayacak int türünde bir dizi değişkeni 'myarray' olduğunu söyler.
Derleyici, bir dizide depolanan boyutu veya gerçek değerleri bilmez. Bunu sadece diziyi başlattıktan sonra bilecektir.
Bir Java Dizisi Oluşturun ve Başlatın
Bir önceki bölümde zaten bir dizi tanımlamıştık. Ancak bu sadece bir referanstır. Yukarıda belirtilen dizi değişkenini kullanmak için, onu başlatmanız ve ardından onun için değerler sağlamanız gerekir. Dizi 'yeni' kullanılarak somutlaştırılır.
Örneklemenin genel sözdizimi aşağıdaki gibidir:
array_name = new data_type (size);
Yukarıdaki ifadede, dizi_adı, başlatılan dizinin adıdır.
data_type=> type of elements the array is going to store size=> the number of elements that will be stored in array
Dolayısıyla, dizide yeniyi kullandığınızda, aslında diziyi veri türü ve öğe sayısı ile ayırmış olursunuz.
Dolayısıyla, yukarıda bildirilen myarray dizisi aşağıdaki gibi başlatılabilir:
myarray = new int(10)
Bu nedenle, Java'da bir dizi oluşturmak, aşağıda gösterildiği gibi iki adımı içerir:
int() myarray; //declaration myarray = new int(10); //instantiation
Dizi oluşturulduktan sonra, aşağıdaki gibi değerlerle başlatabilirsiniz:
myarray(0) = 1; myarray(1) = 3; ….and so on until all elements are initialized.
Yukarıdaki köşeli parantez içindeki ifadeye dizinin dizini denir. Dizinin indeksi, elemanların gerçek değerine erişmek için kullanılır, yani yukarıdaki 10 int elemanlı myarray dizisi 0'dan 9'a kadar numaralandırılmış indislere sahip olacaktır. yukarıda.
Dizi dizininin her zaman 0'dan başladığına dikkat edin. Alternatif olarak, başlatma işlemini daha sonra göreceğimiz bir döngü kullanarak da yapabilirsiniz.
Aşağıda gösterildiği gibi, dizi hazır bilgisini kullanabilir ve bildirim sırasında diziyi başlatabilirsiniz:
int() myarray = {1,3,5,7};
Yukarıdaki ifadede, dizinin uzunluğu eleman sayısına göre belirlenir. Ayrıca, gördüğünüz gibi 'yeni' kullanmaya gerek yok. Daha da önemlisi, dizinin bildirimi, somutlaştırılması ve başlatılması tek bir ifadede yapılır.
Aşağıda, diziyi bildirmek ve başlatmak için basit bir programlama örneği verilmiştir.
public class Main { public static void main(String() args) { int() myarray; //declaration myarray = new int(5); //instantiation myarray(0) = 10; //initialization System.out.println('myarray(0) = ' + myarray(0)); //accessing and printing array elements System.out.println('myarray(1) = ' + myarray(1)); int () oddArray = {1,3,5,7}; //initialization with array literal System.out.println('oddArray(0) = ' + oddArray(0)); System.out.println('oddArray(1) = ' + oddArray(1)); System.out.println('oddArray(2) = ' + oddArray(2)); System.out.println('oddArray(3) = ' + oddArray(3)); } }
Çıktı:
Bu program bir dizi bildirimi ve bunun somutlaştırılmasının yanı sıra başlatmayı da gösterdi. Sadece oincimyarray değeri, yazdırılan diğer myarray (1) değeri varsayılan bir değere, yani 0'a sahiptir.
İkinci dizi, dizi değişmez değişkenini gösterir. Diziyi başlatmasanız bile, Java derleyicisi herhangi bir hata vermeyecektir. Normalde, dizi başlatılmadığında, derleyici, öğenin veri türüne göre dizinin her bir öğesine varsayılan değerler atar.
Aşağıdaki programı kullanarak bu varsayılan değerleri göstereceğiz.
class Main { public static void main(String() args) { System.out.println('=======Default Values======'); System.out.print('String Array:'); String() array_str = new String(5); //declaration and instantiation for (String str : array_str) //assumes default values System.out.print(str + ' '); System.out.println('
'); System.out.print('Integer array:'); //array only instantiated not initialized int() array_num = new int(5); for (intnum : array_num) System.out.print(num + ' '); System.out.println('
'); System.out.print('Double array:'); //array only instantiated not initialized doublearray_double() = new double(5); for (double dnum : array_double) System.out.print(dnum + ' '); System.out.println('
'); System.out.print('Boolean array:'); //array only instantiated not initialized booleanarray_bool() = new boolean(5); for (booleanbval : array_bool) System.out.print(bval + ' '); System.out.println('
'); } }
Çıktı:
Yukarıdaki programda, onları az önce ilan ettik ve somutlaştırdık. Onları herhangi bir değere başlatmadık. Dolayısıyla, dizinin veri türüne bağlı olarak bu dizilerin içeriklerini görüntülediğimizde, elemanların farklı varsayılan değerleri olacaktır.
Yukarıda görüldüğü gibi, dize dizisi varsayılan değer olarak 'boş', tam sayı değerleri 0 ve çift değerler varsayılan olarak 0.0'dır. Boole değerlerinin varsayılan değerleri false olarak ayarlanmıştır.
Dizi Öğelerini Başlatma ve Erişme
# 1) Döngü İçin Kullanmak
Yukarıda yazılan program, başlatma için bir dizi değişmezi kullanır ve diğer dizi öğeleri ayrı ayrı başlatılır. Dizi öğelerini başlatmak için for döngüsünü de kullanabilirsiniz.
Yukarıdaki diziyi aşağıdaki programda for döngüsünü kullanarak başlatmak için dizi değişmezini kullanarak dönüştürdük.
public class Main { public static void main(String() args) { int() oddArray; //declaration oddArray = new int(5); //instantiation for(int i=0;i<5;i++){ oddArray(i) = i+1; //initialization using for loop } System.out.println('oddArray(0) = ' + oddArray(0)); System.out.println('oddArray(1) = ' + oddArray(1)); System.out.println('oddArray(2) = ' + oddArray(2)); System.out.println('oddArray(3) = ' + oddArray(3)); System.out.println('oddArray(4) = ' + oddArray(4)); } }
Çıktı:
Burada gördüğünüz gibi diziyi for döngüsünü kullanarak başlattık. Dizinin her 'i' öğesi değer = i + 1 ile başlatılır. Dizileri başlatmak için yukarıdaki yöntemi kullanmanın yanı sıra, dizi için başlangıç değerleri sağlamak üzere 'java.util' paketinin 'Diziler' sınıfının bazı yöntemlerinden de yararlanabilirsiniz.
Bu yöntemlerden bazılarını aşağıda tartışacağız.
# 2) Arrays.fill () kullanma
Diziyi başlatmak için 'Arrays' sınıfının fill () yöntemi kullanılabilir. Bu yöntemi kullanarak bir diziyi başlattığınızda, dizi tüm dizinlerde aynı değerlerle doldurulur.
Aşağıda verilen programlama örneği.
import java.util.*; public class Main { public static void main(String() args) { int() oddArray; oddArray = new int(5); //fill the array with value 30 Arrays.fill(oddArray, 30); System.out.println('Array Elements initialised with Arrays.fill:'); for(int i=0;i<5;i++) System.out.println('oddArray(' + i +') = ' + oddArray(i)); } }
Çıktı:
Yukarıdaki programda dizi için doldurulacak değer olarak 30 sağladık. Çıktı, dizideki tüm öğelerin 30 değerine sahip olduğunu gösterir.
# 3) Arrays.copyOf () kullanma
'CopyOf ()' yöntemini kullanarak, bir kaynak dizi kullanıyoruz ve ardından değerlerini yeni bir diziye kopyalıyoruz. Kaç değerin kopyalanacağını belirtebilirsiniz ve ardından dizinin kalan öğeleri varsayılan değerlere sahip olacaktır.
Aşağıdaki programı kontrol edin.
import java.util.*; public class Main { public static void main(String() args) { int evenArray() = { 2,4,6,8,10 }; //copy contents of evenArray to copyof_Array int() copyof_Array = Arrays.copyOf(evenArray,5); System.out.println('Array Elements initialised with Arrays.copyOf:'); //print the array elements for(int i=0;i<5;i++) System.out.println('copyof_Array(' + i +') = ' + copyof_Array(i)); } }
Çıktı:
Bu programda, 'evenArray' adlı bir kaynak dizisi kullanıyoruz. CopyOf yöntemini kullanarak, evenArray'in tüm öğelerini yeni diziye kopyaladık. Çıktıda, evenArray ile aynı olan yeni dizinin içeriğini görüntüleriz.
Yukarıdaki iki yöntemden ayrı olarak, Arrays sınıfının setAll () yöntemi ve dizileri başlatmak için kullanılabilen ArrayUtils'in clone () yöntemi gibi daha fazla yöntem olduğunu tartıştık. Bu yöntemleri daha sonra ilgili konularda bu eğitim dizisinde ele alacağız.
Sıkça Sorulan Sorular
S # 1) Boyut olmadan bir Dizi ilan edebilir miyiz?
Cevap: Hayır. Boyut belirtmeden bir dizi bildirmek mümkün değildir. Eğer bunu yapmak istiyorsanız, doğası gereği dinamik olan ArrayList'i kullanabilirsiniz.
Windows 10'da .bin dosyaları nasıl açılır
S # 2) Java'da Dizi boyutu sabit mi?
Cevap: Evet. Diziler Java'da statiktir ve belirli bir boyutta bir dizi bildirirsiniz. Bu boyut belirlendikten sonra bir daha değiştiremezsiniz.
S # 3) Dizileri başlatırken her zaman yeni kullanmak gerekli midir?
Cevap: Hayır. Diziler, yeni kullanılarak veya kaşlı ayraçlar içinde virgülle ayrılmış değerler atanarak başlatılabilir.
Dolayısıyla, aşağıda gösterildiği gibi Array literal kullanarak bir diziyi başlattığımızda. Yenilerini kullanmanıza gerek yok.
int() myarray = {1,2,3,4,5};
Sağlanan elemanların sayısı dizinin boyutunu belirleyecektir.
S # 4) Java Dizisi serileştirilebilir mi?
Cevap: Evet. Java'daki Dizi dahili olarak serileştirilebilir arabirimi uygular.
S # 5) Dizi İlkel veri türü midir?
Cevap: Hayır. Aslında, dizi bir veri türü değildir. Dizi, belirli veri türlerinin öğelerini bitişik bellek konumlarında tutan bir kap nesnesidir.
Sonuç
Bu, Java'da dizilerin oluşturulmasını ve başlatılmasını özetler. Diziler oluşturulduktan ve bazı değerlere ilklendirildikten sonra, onları yazdırmamız gerekir. Dizi öğelerini yazdırmak için, tüm diziyi geçmemiz ve öğeleri yazdırmamız gerekir.
Bir sonraki eğitimimizde dizi öğelerini yazdırma yöntemlerinden bazılarını inceleyeceğiz.
Önerilen Kaynaklar
- Java Arayüzü ve Örneklerle Soyut Sınıf Eğitimi
- Java Programlama Diline Giriş - Video Eğitimi
- Yöntemler ve Yaşam Döngüsü İçeren Java Konuları
- Yeni Başlayanlar İçin JAVA Eğitimi: 100+ Uygulamalı Java Video Eğitimi
- Kod Örnekleriyle Java Dizi Uzunluğu Eğitimi
- C # Dizisi: C # 'da Bir Dizi Nasıl Bildirilir, Başlatılır ve Erişilir?
- Java Hello World - Bugün Java'da İlk Programınızı Oluşturun
- Java Dizilerine ve İlgili Kavramlara Giriş