Aracılığıyla paylaş


Visual Basic'de Dizi Boyutları

Boyut, dizi öğelerinin belirtimini değiştirebileceğiniz bir yöndür. Ayın her günü için satış toplamını tutan bir dizi bir boyuta (ayın günü) sahiptir. Ayın her günü için departmana göre satış toplamını tutan bir dizi iki boyuta sahiptir (departman numarası ve ayın günü). Bir dizinin sahip olduğu boyut sayısı, derece olarak adlandırılır.

Not

Bir dizinin kaç boyutu olduğunu belirlemek için özelliğini kullanabilirsiniz Rank .

Boyutlar ile Çalışma

Boyutlarının her biri için bir dizin veya alt simge sağlayarak dizinin bir öğesini belirtirsiniz. Öğeler her boyut boyunca dizin 0'dan bu boyut için en yüksek dizine kadar bitişiktir.

Aşağıdaki çizimlerde farklı derecelere sahip dizilerin kavramsal yapısı gösterilmektedir. Çizimlerdeki her öğe, bu öğeye erişen dizin değerlerini gösterir. Örneğin, dizinleri (1, 0)belirterek iki boyutlu dizinin ikinci satırının ilk öğesine erişebilirsiniz.

Diagram that shows a one-dimensional array.

Diagram that shows a two-dimensional array.

Diagram that shows a three-dimensional array.

Bir Boyut

Birçok dizi, her yaştaki kişi sayısı gibi yalnızca bir boyuta sahiptir. Bir öğeyi belirtmek için tek gereksinim, o öğenin sayıyı barındırdığı yaştır. Bu nedenle, böyle bir dizi yalnızca bir dizin kullanır. Aşağıdaki örnek, 0 ile 120 yaş arasında tek boyutlu bir yaş sayısı dizisini tutacak bir değişken bildirir.

Dim ageCounts(120) As UInteger

İki Boyut

Bazı diziler, kampüsteki her bir binanın her katındaki ofis sayısı gibi iki boyuta sahiptir. Bir elemanın belirtimi hem bina numarasını hem de katı gerektirir ve her eleman bu yapı ve zemin bileşiminin sayısını tutar. Bu nedenle, böyle bir dizi iki dizin kullanır. Aşağıdaki örnek, 0 ile 40 arası binalar ve 0 ile 5 arası katlar için iki boyutlu bir ofis sayısı dizisini tutan bir değişken bildirir.

Dim officeCounts(40, 5) As Byte

İki boyutlu diziye dikdörtgen dizi de denir.

Üç Boyut

Birkaç dizi, üç boyutlu boşluktaki değerler gibi üç boyuta sahiptir. Böyle bir dizi, fiziksel alanın x, y ve z koordinatlarını temsil eden üç dizin kullanır. Aşağıdaki örnek, üç boyutlu bir hacimdeki çeşitli noktalarda üç boyutlu hava sıcaklıkları dizisini tutan bir değişken bildirir.

Dim airTemperatures(99, 99, 24) As Single

Üç Boyuttan Fazla

Bir dizide en fazla 32 boyut olsa da, üçten fazla olması nadirdir.

Not

Bir diziye boyut eklediğinizde, dizi için gereken toplam depolama alanı önemli ölçüde artar, bu nedenle çok boyutlu dizileri dikkatli kullanın.

Farklı Boyutlar Kullanma

Mevcut ayın her günü için satış tutarlarını izlemek istediğinizi varsayalım. Aşağıdaki örnekte gösterildiği gibi, ayın her günü için bir tane olmak üzere 31 öğe içeren tek boyutlu bir dizi bildirebilirsiniz.

Dim salesAmounts(30) As Double

Şimdi aynı bilgileri yalnızca ayın her günü için değil, aynı zamanda yılın her ayı için de izlemek istediğinizi varsayalım. Aşağıdaki örnekte gösterildiği gibi 12 satır (aylar için) ve 31 sütun (gün için) içeren iki boyutlu bir dizi bildirebilirsiniz.

Dim salesAmounts(11, 30) As Double

Şimdi dizinizin bilgileri bir yıldan uzun süre saklamasına karar verdiyseniz. 5 yıllık satış tutarlarını izlemek istiyorsanız, aşağıdaki örnekte gösterildiği gibi 5 katman, 12 satır ve 31 sütun içeren üç boyutlu bir dizi bildirebilirsiniz.

Dim salesAmounts(4, 11, 30) As Double

Her dizin 0 ile en büyük arasında değiştiğinden, her bir boyutunun salesAmounts bu boyut için gereken uzunluktan bir küçük olarak bildirildiğini unutmayın. Ayrıca, dizinin boyutunun her yeni boyutla arttığını unutmayın. Yukarıdaki örneklerde yer alan üç boyut sırasıyla 31, 372 ve 1.860 öğedir.

Not

deyimini veya yan tümcesini DimNew kullanmadan bir dizi oluşturabilirsiniz. Örneğin yöntemini çağırabilir CreateInstance veya başka bir bileşen kodunuzu bu şekilde oluşturulan bir diziye geçirebilir. Böyle bir dizi 0 dışında bir alt sınıra sahip olabilir. Yöntemini veya LBound işlevini kullanarak her zaman bir boyutun GetLowerBound alt sınırı için test edebilirsiniz.

Ayrıca bkz.