Bagikan melalui


Cara: Menginisialisasi Variabel Array di Visual Basic

Anda menginisialisasi variabel array dengan menyertakan array literal dalam New klausul dan menentukan nilai awal array. Anda dapat menentukan jenis atau mengizinkannya disimpulkan dari nilai dalam array literal. Untuk informasi selengkapnya tentang bagaimana jenis disimpulkan, lihat "Mengisi Array dengan Nilai Awal" dalam Array.

Untuk menginisialisasi variabel array dengan menggunakan array literal

  • Baik dalam New klausul, atau saat Anda menetapkan nilai array, berikan nilai elemen di dalam kurung kurawal ({}). Contoh berikut menunjukkan beberapa cara untuk mendeklarasikan, membuat, dan menginisialisasi variabel berisi array yang memiliki elemen jenis Char.

    ' 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}
    

    Setelah setiap pernyataan dijalankan, array yang dibuat memiliki panjang 3, dengan elemen pada indeks 0 hingga indeks 2 yang berisi nilai awal. Jika Anda menyediakan batas atas dan nilai, Anda harus menyertakan nilai untuk setiap elemen dari indeks 0 hingga batas atas.

    Perhatikan bahwa Anda tidak perlu menentukan batas atas indeks jika Anda menyediakan nilai elemen dalam array literal. Jika tidak ada batas atas yang ditentukan, ukuran array disimpulkan berdasarkan jumlah nilai dalam array literal.

Untuk menginisialisasi variabel array multidmensional dengan menggunakan array literal

  • Nilai lapis di dalam kurung kurawal ({}) dalam kurung kurawal. Pastikan bahwa array berlapis literal semuanya disimpulkan sebagai array dengan jenis dan panjang yang sama. Contoh kode berikut menunjukkan beberapa contoh inisialisasi array multidmensional.

    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}}}
    
  • Anda dapat secara eksplisit menentukan batas array, atau membiarkannya keluar dan membuat pengkompilasi menyimpulkan batas array berdasarkan nilai dalam array literal. Jika Anda menyediakan batas atas dan nilai, Anda harus menyertakan nilai untuk setiap elemen dari indeks 0 hingga batas atas. Contoh berikut menunjukkan beberapa cara untuk mendeklarasikan, membuat, dan menginisialisasi variabel berisi array yang memiliki elemen jenis 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}}
    

    Setelah setiap pernyataan dijalankan, array yang dibuat berisi enam elemen yang diinisialisasi yang memiliki indeks (0,0), (0,1), (0,2), (1,0), (1,1), dan (1,2). Setiap lokasi array berisi nilai 10.

  • Contoh berikut mengulang melalui array multidmensional. Dalam aplikasi konsol Windows yang ditulis dalam Visual Basic, tempelkan kode di dalam metode Sub Main(). Komentar terakhir menunjukkan output.

    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
    

Untuk menginisialisasi variabel array jagged dengan menggunakan array literal

  • Nilai objek berlapis di dalam kurung kurawal ({}). Meskipun Anda juga dapat membuat array literal berlapis yang menentukan array dengan panjang yang berbeda, dalam kasus array jagged, pastikan bahwa array literal berlapis diapit dalam tanda kurung (()). Tanda kurung memaksa evaluasi array literal berlapis, dan array yang dihasilkan digunakan sebagai nilai awal array jagged. Contoh kode berikut menunjukkan dua contoh inisialisasi array jagged.

    ' 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() {}}
    
  • Contoh berikut mengulang melalui array jagged. Dalam aplikasi konsol Windows yang ditulis dalam Visual Basic, tempelkan kode di dalam metode Sub Main(). Komentar terakhir dalam kode menunjukkan output.

    ' 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
    

Lihat juga