C# Array Bergerigi
C# Array Bergerigi
Dalam tutorial ini, kita akan belajar tentang array bergerigi C#. Kita akan belajar mendeklarasikan, menginisialisasi, dan mengakses array bergerigi dengan bantuan contoh.
Dalam C#, array bergerigi terdiri dari beberapa array sebagai elemennya. Namun, tidak seperti array multidimensi, setiap array di dalam array bergerigi dapat memiliki ukuran yang berbeda.
Sebelum Anda mempelajari tentang array bergerigi, pastikan untuk mengetahui tentang
- Array C#
- C# Array Multidimensi
Deklarasi Array Bergerigi C#
Berikut adalah sintaks untuk mendeklarasikan array bergerigi di C#.
dataType[ ][ ] nameOfArray = new dataType[rows][ ];
Mari kita lihat contohnya,
// declare jagged array
int[ ][ ] jaggedArray = new int[2][ ];
Di sini,
int
- tipe data larik
[][]
- mewakili larik bergerigi
jaggedArray
- nama larik bergerigi
[2][]
- mewakili jumlah elemen (array) di dalam array bergerigi
Karena kita tahu setiap elemen array bergerigi juga merupakan array, kita dapat mengatur ukuran array individu. Misalnya,
// set size of the first array as 3
jaggedArray[0] = new int[3];
// set size of second array as 2
jaggedArray[1] = new int[2];
Menginisialisasi Array Bergerigi
Ada berbagai cara untuk menginisialisasi array bergerigi. Misalnya,
1. Menggunakan nomor indeks
Setelah kita mendeklarasikan array bergerigi, kita dapat menggunakan nomor indeks untuk menginisialisasinya. Misalnya,
// initialize the first array
jaggedArray[0][0] = 1;
jaggedArray[0][1] = 3;
jaggedArray[0][2] = 5;
// initialize the second array
jaggedArray[1][0] = 2;
jaggedArray[1][1] = 4;
Di sini,
- indeks pada tanda kurung siku pertama mewakili indeks elemen larik bergerigi
- indeks pada kurung siku kedua mewakili indeks elemen di dalam setiap elemen larik bergerigi
2. Inisialisasi tanpa mengatur ukuran elemen array
// declaring string jagged array
int[ ][ ] jaggedArray = new int[2] [ ];
// initialize each array
jaggedArray[0] = new int[] {1, 3, 5};
jaggedArray[1] = new int[] {2, 4};
3. Inisialisasi saat mendeklarasikan Jagged Array
int[ ][ ] jaggedArray = {
new int[ ] {10, 20, 30},
new int[ ] {11, 22},
new int[ ] {88, 99}
};
Mengakses elemen array bergerigi
Kita dapat mengakses elemen array bergerigi menggunakan nomor indeks. Misalnya,
// access first element of second array
jaggedArray[1][0];
// access second element of the second array
jaggedArray[1][1];
// access second element of the first array
jaggedArray[0][1];
Contoh:C# Jagged Array
using System;
namespace JaggedArray {
class Program {
static void Main(string[] args) {
// create a jagged array
int[ ][ ] jaggedArray = {
new int[] {1, 3, 5},
new int[] {2, 4},
};
// print elements of jagged array
Console.WriteLine("jaggedArray[1][0]: " + jaggedArray[1][0]);
Console.WriteLine("jaggedArray[1][1]: " + jaggedArray[1][1]);
Console.WriteLine("jaggedArray[0][2]: " + jaggedArray[0][2]);
Console.ReadLine();
}
}
}
Keluaran
jaggedArray[1][0]: 2
jaggedArray[1][1]: 4
jaggedArray[0][2]: 5
Di sini, di dalam array bergerigi,
jaggedArray[1][0]
- elemen pertama dari larik kedua
jaggedArray[1][1]
- elemen kedua dari larik kedua
jaggedArray[0][2]
- elemen ketiga dari larik pertama
Mengulang melalui larik bergerigi
Dalam C#, kita dapat menggunakan loop untuk mengulangi setiap elemen dari array bergerigi. Misalnya,
using System;
namespace JaggedArray {
class Program {
static void Main(string[] args) {
// declare a jagged array
int[][] jaggedArray = new int[2][];
// set size of Jagged Array Elements
jaggedArray[0] = new int[3];
jaggedArray[1] = new int[2];
// initialize the first array
jaggedArray[0][0] = 1;
jaggedArray[0][1] = 3;
jaggedArray[0][2] = 5;
// initialize the second array
jaggedArray[1][0] = 2;
jaggedArray[1][1] = 2;
// outer for loop
for (int i = 0; i < jaggedArray.Length; i++) {
Console.Write("Element "+ i +": ");
// inner for loop
for (int j = 0; j < jaggedArray[i].Length; j++) {
Console.Write(jaggedArray[i][j] + " ");
}
Console.WriteLine();
}
Console.ReadLine();
}
}
}
Keluaran
Element 0: 1 3 5
Element 1: 2 2
Dalam contoh di atas, kami telah menggunakan loop for bersarang untuk beralih melalui array bergerigi. Di sini,
1. Lingkaran luar untuk
- untuk mengakses elemen (array) dari array bergerigi
jaggedArray.Length
- memberikan ukuran array bergerigi
2. Bagian dalam untuk loop
- untuk mengakses elemen larik individual di dalam larik bergerigi.
jaggedArray[i].Length
- memberikan ukuran elemen ith
larik di dalam larik bergerigi
Array Bergerigi dengan Array Multidimensi
Di C#, kita juga dapat menggunakan array multidimensi sebagai Elemen Array Bergerigi. Misalnya,
int[ ][ , ] jaggedArrayTwoD = new int[2][ , ] {
new int[,] { {1, 8}, {6, 7} },
new int[,] { {0, 3}, {5, 6}, {9, 10} }
};
Di sini, setiap elemen dari larik bergerigi adalah larik multidimensi:
new int[,] { {1, 8}, {6, 7} }
- Array 2D dengan 2 elemen
new int[ , ] { {0, 3}, {5, 6}, {9, 10} }
- Array 2D dengan 3 elemen
Mari kita lihat contohnya,
using System;
namespace JaggedArray {
class Program {
static void Main(string[] args) {
// declare and initialize jagged array with 2D array
int[][,] jaggedArray = new int[3][ , ] {
new int[ , ] { {1, 8}, {6, 7} },
new int[ , ] { {0, 3}, {5, 6}, {9, 10} },
new int[ , ] { {11, 23}, {100, 88}, {0, 10} }
};
Console.WriteLine(jaggedArray[0][0, 1]);
Console.WriteLine(jaggedArray[1][2, 1]);
Console.WriteLine(jaggedArray[2][1, 0]);
Console.ReadLine();
}
}
}
Keluaran
8
10
100
Pada contoh di atas, perhatikan kodenya,
jaggedArray[0][0, 1]
Di sini,
[0]
- mewakili elemen pertama (array 2D) dari larik bergerigi
[0, 1]
- mewakili elemen kedua dari larik pertama di dalam larik 2D