Nasıl yapılır: Visual Basic'te Dizi Değişkeni Başlatma

Bir yan tümceye dizi değişmez değeri New ekleyerek ve dizinin ilk değerlerini belirterek bir dizi değişkeni başlatırsınız. Türü belirtebilir veya dizi değişmez değerindeki değerlerden çıkarılmalarına izin vekleyebilirsiniz. Türün nasıl çıkarılması hakkında daha fazla bilgi için, Diziler'de "İlk Değerlerle Dizi Doldurma" konusuna bakın.

Dizi sabit değeri kullanarak bir dizi değişkeni başlatmak için

  • Yan tümcesinde New veya dizi değerini atadığınızda, öğe değerlerini ayraçlar ({}) içinde sağlayın. Aşağıdaki örnekte, türünde Charöğeleri olan bir diziyi içerecek şekilde bir değişken bildirmenin, oluşturmanın ve başlatmanın çeşitli yolları gösterilmektedir.

    ' The following five lines of code create the same array.
    ' Preferred syntaxes are on the lines with chars1 and chars2.
    Dim chars1 = {"%"c, "&"c, "@"c}
    Dim chars2 As Char() = {"%"c, "&"c, "@"c}
    
    Dim chars3() As Char = {"%"c, "&"c, "@"c}
    Dim chars4 As Char() = New Char(2) {"%"c, "&"c, "@"c}
    Dim chars5() As Char = New Char(2) {"%"c, "&"c, "@"c}
    

    Her deyim yürütülürken, oluşturulan dizinin uzunluğu 3 olur ve dizin 0 ile dizin 2 arasında ilk değerleri içeren öğeler bulunur. Hem üst sınırı hem de değerleri sağlarsanız, dizin 0'dan üst sınıra kadar olan her öğe için bir değer eklemeniz gerekir.

    Bir dizi değişmez değerinde öğe değerleri sağlarsanız dizin üst sınırı belirtmeniz gerekmediğine dikkat edin. Üst sınır belirtilmezse, dizinin boyutu dizi değişmez değerindeki değer sayısına göre çıkarılır.

Dizi değişmez değerlerini kullanarak çok boyutlu bir dizi değişkeni başlatmak için

  • Değerleri küme ayraçlarının ({}) içinde küme ayraçları içinde iç içe geçirin. İç içe dizi değişmez değerlerinin tümünün aynı türde ve uzunlukta diziler olarak çıkarıldığından emin olun. Aşağıdaki kod örneği, çok boyutlu dizi başlatmanın çeşitli örneklerini gösterir.

    Dim numbers = {{1, 2}, {3, 4}, {5, 6}}
    Dim customerData = {{"City Power & Light", "http://www.cpandl.com/"},
                        {"Wide World Importers", "http://wideworldimporters.com"},
                        {"Lucerne Publishing", "http://www.lucernepublishing.com"}}
    
    ' You can nest array literals to create arrays that have more than two 
    ' dimensions.
    Dim twoSidedCube = {{{1, 2}, {3, 4}}, {{5, 6}, {7, 8}}}
    
  • Dizi sınırlarını açıkça belirtebilir veya bunları dışarıda bırakabilir ve derleyicinin dizi sabit değerindeki değerlere göre dizi sınırlarını çıkarabilmesini sağlayabilirsiniz. Hem üst sınırları hem de değerleri sağlarsanız, her boyutta dizin 0'dan üst sınıra kadar olan her öğe için bir değer eklemeniz gerekir. Aşağıdaki örnekte, türünde öğeleri olan iki boyutlu bir diziyi içerecek şekilde bir değişken bildirmenin, oluşturmanın ve başlatmanın çeşitli yolları gösterilmektedir Short

    ' The following five lines of code create the same array.
    ' Preferred syntaxes are on the lines with scores1 and scores2.
    Dim scores1 = {{10S, 10S, 10S}, {10S, 10S, 10S}}
    Dim scores2 As Short(,) = {{10, 10, 10}, {10, 10, 10}}
    
    Dim scores3(,) As Short = {{10, 10, 10}, {10, 10, 10}}
    Dim scores4 As Short(,) = New Short(1, 2) {{10, 10, 10}, {10, 10, 10}}
    Dim scores5(,) As Short = New Short(1, 2) {{10, 10, 10}, {10, 10, 10}}
    

    Her deyim yürütüldükten sonra, oluşturulan dizi , (0,1)(1,0)(0,2)(1,1)ve (1,2)dizinlerine (0,0)sahip altı başlatılan öğe içerir. Her dizi konumu değerini 10içerir.

  • Aşağıdaki örnek, çok boyutlu bir dizi aracılığıyla yinelenir. Visual Basic'te yazılmış bir Windows konsol uygulamasında, kodu yönteminin Sub Main() içine yapıştırın. Son açıklamalar çıktıyı gösterir.

    Dim numbers = {{1, 2}, {3, 4}, {5, 6}}
    
    ' Iterate through the array.
    For index0 = 0 To numbers.GetUpperBound(0)
        For index1 = 0 To numbers.GetUpperBound(1)
            Debug.Write(numbers(index0, index1).ToString & " ")
        Next
        Debug.WriteLine("")
    Next
    ' Output
    '  1 2
    '  3 4
    '  5 6
    

Dizi değişmez değerlerini kullanarak pürüzlü bir dizi değişkeni başlatmak için

  • Nesne değerlerini küme ayraçlarının () içine iç içe geçirin{}. Farklı uzunluklardaki dizileri belirten dizi değişmez değerlerini de iç içe yerleştirebilirsiniz, ancak pürüzlü bir dizi söz konusu olduğunda, iç içe dizi değişmez değerlerinin parantez içine alındığından (() ) emin olun. Parantezler iç içe dizi değişmez değerlerinin değerlendirilmesini zorlar ve sonuçta elde edilen diziler, pürüzlü dizinin ilk değerleri olarak kullanılır. Aşağıdaki kod örneğinde iki pürüzlü dizi başlatma örneği gösterilmektedir.

    ' Create a jagged array of arrays that have different lengths.
    Dim jaggedNumbers = {({1, 2, 3}), ({4, 5}), ({6}), ({7})}
    
    ' Create a jagged array of Byte arrays.
    Dim images = {New Byte() {}, New Byte() {}, New Byte() {}}
    
  • Aşağıdaki örnek, pürüzlü bir dizi aracılığıyla yinelenir. Visual Basic'te yazılmış bir Windows konsol uygulamasında, kodu yönteminin Sub Main() içine yapıştırın. Koddaki son açıklamalar çıkışı gösterir.

    ' Create a jagged array of arrays that have different lengths.
    Dim jaggedNumbers = {({1, 2, 3}), ({4, 5}), ({6}), ({7})}
    
    For indexA = 0 To jaggedNumbers.Length - 1
        For indexB = 0 To jaggedNumbers(indexA).Length - 1
            Debug.Write(jaggedNumbers(indexA)(indexB) & " ")
        Next
        Debug.WriteLine("")
    Next
    
    ' Output:
    '  1 2 3 
    '  4 5 
    '  6
    '  7
    

Ayrıca bkz.