Dizilerle Çalışma: Bildirme ve Başlatma

click fraud protection

Bir programın aynı sayıda değerle çalışması gerekiyorsa veri tipi, bir değişken her sayı için. Örneğin, loto numaralarını gösteren bir program:

int piyangoNumarası1 = 16;
int piyangoNumarası2 = 32;
int piyangoNumara3 = 12;
int piyangoNumara4 = 23;
int piyangoNumara5 = 33;
int piyangoNumara6 = 20;

Birlikte gruplandırılabilen değerlerle baş etmenin daha zarif bir yolu bir dizi kullanmaktır. Dizi, veri türünün sabit sayıda değerini tutan bir kaptır. Yukarıdaki örnekte, loto numaraları bir int dizisinde gruplandırılabilir:

int [] piyangoNumbers = {16,32,12,23,33,20}; 

Bir diziyi bir dizi kutu olarak düşünün. Dizideki kutu sayısı değişemez. Her kutu, diğer kutularda yer alan değerlerle aynı veri türünde olduğu sürece bir değer tutabilir. Hangi değeri içerdiğini görmek için kutunun içine bakabilir veya kutunun içindekileri başka bir değerle değiştirebilirsiniz. Diziler hakkında konuşurken kutulara eleman denir.

Diziyi Bildirme ve Başlatma

Bir dizinin bildirim ifadesi, başka bir değişken belirtmek. Veri türünü ve ardından dizinin adını içerir - tek fark, veri türünün yanında köşeli parantezlerin dahil edilmesidir:

instagram viewer

int [] intArray;
float [] floatArray; 
char [] charArray;

beyan beyanları Yukarıdaki derleyiciye şunu söyleyin:

intArray
değişken bir dizi
int
,
floatArray
bir dizi
yüzer
ve
charArray
karakter dizisidir. Herhangi bir değişken gibi, bir değer atanarak başlatılıncaya kadar kullanılamazlar. Bir dizi için bir değerin bir diziye atanması bir dizinin boyutunu tanımlamalıdır:
intArray = yeni int [10]; 

Köşeli ayraçların içindeki sayı, dizinin kaç öğe içerdiğini tanımlar. Yukarıdaki atama ifadesi, on öğeden oluşan bir int dizisi oluşturur. Tabii ki, beyan ve atamanın tek bir ifadede gerçekleşmemesinin bir nedeni yoktur:

float [] floatArray = yeni float [10]; 

Diziler yalnızca ilkel veri türleriyle sınırlı değildir. Nesne dizileri oluşturulabilir:

String [] names = new Dize [5]; 

Dizi Kullanma

Bir dizi başlatıldığında, öğelerin dizinin dizinini kullanarak kendilerine atanan değerler olabilir. Dizin, dizideki her öğenin konumunu tanımlar. İlk eleman 0'da, ikinci eleman 1'de vb. İlk öğenin dizininin 0 olduğunu not etmek önemlidir. Bir dizinin dizinin 0'dan 9 yerine 1'den 10'a kadar olduğu on öğeye sahip olduğunu düşünmek kolaydır. Örneğin, loto numaraları örneğine dönersek 6 eleman içeren bir dizi oluşturabilir ve loto numaralarını elemanlara atayabiliriz:

int [] piyangoNumbers = yeni int [6];
piyango Numaraları [0] = 16;
piyango Numaraları [1] = 32;
piyango Numaraları [2] = 12;
piyango Numaraları [3] = 23;
piyango Numaraları [4] = 33;
piyango Numaraları [5] = 20;

Bildirim dizisindeki öğelerin değerlerini koyarak dizideki öğeleri doldurmanın bir kısayolu vardır:

int [] piyangoNumbers = {16,32,12,23,33,20};
String [] names = {"John", "James", "Julian", "Jack", "Jonathon"};

Her elemanın değerleri bir çift süslü parantez içine yerleştirilir. Değerlerin sırası, hangi öğeye dizin konumu 0'dan başlayarak değer atanacağını belirler. Dizideki öğelerin sayısı, süslü parantez içindeki değerlerin sayısı ile belirlenir.

Bir öğenin değerini almak için dizini kullanılır:

System.out.println ("İlk öğenin değeri" + lotteryNumbers [0]); 

Bir dizinin kaç öğeye sahip olduğunu bulmak için uzunluk alanını kullanın:

System.out.println ("lotteryNumbers dizisinde" + lotteryNumbers.length + "elements" bulunur); 

Not: Uzunluk yöntemini kullanırken sık karşılaşılan bir hata, uzunluk değerini bir dizin konumu olarak kullanmaktır. Bir dizinin dizin konumları 0 - uzunluk - 1 olduğundan bu her zaman bir hataya neden olur.

Çok Boyutlu Diziler

Şimdiye kadar baktığımız diziler tek boyutlu (veya tek boyutlu) diziler olarak biliniyor. Bu, yalnızca bir satır öğeye sahip oldukları anlamına gelir. Ancak, dizilerin birden fazla boyutu olabilir. Çok boyutlu aslında dizileri içeren bir dizidir:

int [] [] piyangoNumbers = {{16,32,12,23,33,20}, {34,40,3,11,33,24}}; 

Çok boyutlu dizinin dizini iki sayıdan oluşur:

System.out.println ("1,4 öğesinin değeri" + lotteryNumbers [1] [4]); 

Çok boyutlu bir dizide bulunan dizilerin uzunluğunun aynı uzunlukta olması gerekmese de:

Dize [] [] adlar = yeni Dize [5] [7]; 

Diziyi Kopyalama

Bir diziyi kopyalamak için en kolay yol

arraycopy
System sınıfının yöntemi.
arraycopy
yöntemi, bir dizinin tüm elemanlarını veya alt bölümlerini kopyalamak için kullanılabilir. Şuraya beş parametre iletildi:
 arraycopy
yöntem - orijinal dizi, öğenin kopyalanmaya başlanacağı dizin konumu, yeni dizi, eklenmeye başlanacak dizin konumu, kopyalanacak öğe sayısı:
genel statik boşluk dizisi (Object src, int srcPos, Object dest, int destPos, int length)

Örneğin, bir öğenin son dört öğesini içeren yeni bir dizi oluşturmak için

int 
dizi:
int [] piyangoNumbers = {16,32,12,23,33,20};
int [] newArrayNumbers = yeni int [4];
Sistem.arraykopi (piyangoNumbers, 2, yeniArrayNumbers, 0, 4);

Diziler sabit bir uzunluk olduğundan,

arraycopy
yöntemi bir dizinin boyutunu değiştirmek için yararlı bir yol olabilir.

Diziler hakkında daha fazla bilgi edinmek için Dizileri kullanarak dizileri manipüle etme hakkında bilgi edinebilirsiniz sınıflandırma ve dinamik diziler oluşturma (yani, eleman sayısı sabit bir sayı olmadığında diziler) kullanmak ArrayList sınıfı.

instagram story viewer