Codegym Üniversitesi kursunun bir parçası olarak bir akıl hocası ile bir ders parçası. Tüm kurs için kaydolun.


"Merhaba, Amigo!"

"Merhaba, Ellie!"

"Bugün size yeni ve ilginç bir varlıktan bahsedeceğim: diziler. Bir dizi, yalnızca bir yerine birkaç değer depolayabilen bir veri türüdür."

Diziler - 1

"Bir benzetmeyle başlayalım. Bir ev ile bir apartmanı karşılaştıralım. Sıradan bir evde genellikle tek bir aile oturur, oysa bir apartman birçok daireye bölünmüştür. Bir evde yaşayan bir aileye mektup göndermek için, Apartmanda yaşayan bir aileye mektup göndermek için , apartmanın tekil adresini ve apartman numarasını yazmanız gerekmektedir."

"Şu ana kadar her şey net görünüyor."

"Dizi değişkeni, apartman değişkenine benzer. İçinde bir yerine birçok değer saklayabilirsiniz. Böyle bir değişkenin, bir apartman numarası (dizin) kullanarak başvurabileceğiniz birkaç dairesi (öğesi) vardır. Bunu yapmak için, dizi değişkeninin adından sonra, erişmek istediğiniz dizi öğesinin dizinini köşeli parantez içinde belirtin. Oldukça basit."

"Umarım, Ellie."

"Bir apartman değişkeni (dizi değişkeni) her türden öğe içerebilir. ' TürAdı değişken_adı ' yerine ' TürAdı[] değişken_adı ' yazmanız yeterlidir ."

İşte bazı örnekler:

kod Tanım
String[] list = new String[5];
Öğelerle bir Stringdizi oluşturun5
System.out.println(list[0]);
System.out.println(list[1]);
System.out.println(list[2]);
System.out.println(list[3]);
System.out.println(list[4]);
Beş ' boş ' değer görüntülenecektir.

Belirli bir dizi öğesinin değerine erişmek için köşeli parantezler ve öğenin dizinini kullanın.

int listCount = list.length;
listCountdizideki öğelerin sayısı olan 5 değeri atanacaktır list. dizinin uzunluğunu (öğe sayısını) saklar.
list.length
list[1] = "Mom";
String s = list[1];
Dizi elemanlarına nesne atarken, eleman indeksini köşeli parantez içinde belirtmeniz gerekir.
for (int i = 0; i < list.length; i++)
{
     System.out.println(list[i]);
}
Tüm dizi öğelerinin değerlerini ekranda görüntüleyin.

"Ne kadar ilginç!"

"Bir dizi değişkeni ek başlatma gerektirir."

— ?

"Normal bir değişkenle, onu bildirebilir ve ardından ona çeşitli değerler atayabilirsiniz. Bir dizi ile bu biraz daha karmaşıktır."

"Önce N öğeyi tutacak bir kap oluşturmalısınız ve ancak o zaman kapsayıcıya değer yerleştirmeye başlayabilirsiniz."

kod Tanım
String[] list = null;
Dizi listdeğişkeni null . Yalnızca öğeler için bir kapsayıcıya başvuru depolayabilir. Kapsayıcıyı ayrıca oluşturmalısınız.
String[] list = new String[5];
Öğeler için bir kap oluşturun 5ve değişkene bir başvuru atayın list. Bu kapta 0, 1, 2, 3 ve 4 numaralı 5 daire (eleman) vardır.
String[] list = new String[1];
Öğe için bir kapsayıcı oluşturun 1ve değişkene bir başvuru atayın list. Bu kaba bir şey koymak için şöyle bir şey yazardık:list[0] = "Yo!";
String[] list = new String[0];
Öğeler için bir kap oluşturun 0ve değişkene bir başvuru atayın list. Bu konteynerde hiçbir şey saklayamazsınız.

"Anlıyorum. Şimdi daha da netleşiyor."

"Diziler hakkında bazı temel gerçekler:"

1) Bir dizi birçok elemandan oluşur.

2) Belirli bir öğeye erişmek için numarasını (dizin) belirtirsiniz.

3) Tüm elemanlar aynı türdendir.

4) Tüm öğeler için başlangıç ​​değeri null'dur; ilkel tür dizileri için başlangıç ​​değeri 0, 0.0 (kesirli sayılar için) veya false'tur (booleanlar için). Dizilerde olmayan başlatılmamış değişkenlerle tamamen aynıdır.

5) String[] listesi basitçe bir değişken bildirir. Önce bir dizi (kapsayıcı) oluşturmanız, içine bir şey koymanız ve ancak o zaman onu kullanmanız gerekir (aşağıdaki örneğe bakın).

6) Bir dizi (kapsayıcı) nesnesi oluşturduğumuzda, onun uzunluğunu veya eleman sayısını belirtmemiz gerekir. Bunu new TypeName[n] kullanarak yapıyoruz;

Diziler - 2

İşte bazı örnekler:

kod Tanım
String s;
String[] list;
ssıfıra eşittir
listsıfıra eşittir
list = new String[10];
int n = list.length;
Değişken list, bir nesneye bir referans depolar - 10 elemanlı bir Dize dizisi
n, 10'a eşittir
list = new String[0];
Şimdi listbir eleman dizisi içeriyor 0. Dizi var, ancak Dizeleri depolayamaz.
list = null;
System.out.println(list[1]);
Bu, bir istisna (çalışma zamanı hatası) atar ve program anormal bir şekilde sonlandırılır: listboş bir referans içerir.
list = new String[10];
System.out.println(list[11]);
Bu, bir istisna (çalışma zamanı hatası) atar: dizi dizini sınırların dışında.

10 öğe içeriyorsa list, geçerli dizinler şunlardır: 0,1,2,3,4,5,6,7,8 ve 9 (toplam 10 dizin için).