Cara Menginisialisasi Array di C#

Cara Menginisialisasi Array Di C



Di C#, array berfungsi sebagai wadah untuk menyimpan elemen dari tipe data yang sama. Saat membuat array, ada beberapa pendekatan untuk menginisialisasinya dengan elemen. Artikel ini menyelidiki berbagai metode menginisialisasi array di C#, memberikan eksplorasi komprehensif dari setiap pendekatan.

Metode Untuk Menginisialisasi Array di C#

Array adalah struktur data penting dalam pemrograman komputer yang memungkinkan Anda untuk menyimpan dan memanipulasi kumpulan elemen dari tipe data yang sama di lokasi memori yang berdekatan. Berikut adalah beberapa cara untuk menginisialisasi array di C#:







1: Menginisialisasi Array Menggunakan Sintaks Penginisialisasi Array

Pendekatan yang paling mudah untuk menginisialisasi array adalah dengan memanfaatkan sintaks penginisialisasi array karena hal ini melibatkan menyertakan elemen array dalam kurung kurawal, dipisahkan dengan koma, misalnya:



int [ ] angka = { 1 , 2 , 3 , 4 , 5 } ;


Dalam kode ini, array bilangan bulat bernama 'angka' dibuat dan diinisialisasi dengan nilai 1 hingga 5. Demikian pula, Anda dapat menggunakan sintaks yang sama untuk menginisialisasi array multidimensi.



int [ , ] MyMultiDimensionalArray = { { 1 , 2 } , { 3 , 4 } , { 5 , 6 } } ;


Berikut adalah contoh kode yang menggunakan sintaks penginisialisasi untuk menginisialisasi array 1D dan 2D di C#:





menggunakan Sistem;

larik kelas
{
kekosongan statis Utama ( rangkaian [ ] argumen )
{
// Inisialisasi array 1D menggunakan sintaks penginisialisasi
int [ ] larik1D = { 1 , 2 , 3 , 4 , 5 } ;
Console.WriteLine ( 'Nilai dalam array1D:' ) ;
untuk ( int saya = 0 ; Saya < array1D.Length; saya++ ) {
Console.WriteLine ( array1D [ Saya ] ) ;
}
// Inisialisasi array 2D menggunakan sintaks penginisialisasi
int [ , ] larik2D = { { 1 , 2 } , { 3 , 4 } , { 5 , 6 } } ;
Console.WriteLine ( 'Nilai dalam array2D:' ) ;
untuk ( int saya = 0 ; Saya < array2D.GetLength ( 0 ) ; saya++ ) {
untuk ( int j = 0 ; J < array2D.GetLength ( 1 ) ; j++ ) {
Console.WriteLine ( '({0}, {1}): {2}' , saya, j, larik2D [ aku j ] ) ;
}
}
}
}


Dalam kode ini, kami menggunakan sintaks penginisialisasi untuk menginisialisasi array integer 1 dimensi yang disebut array1D dengan nilai 1, 2, 3, 4, dan 5.

Kami juga menggunakan sintaks penginisialisasi untuk menginisialisasi larik bilangan bulat 2 dimensi yang disebut array2D dengan nilai {1, 2}, {3, 4}, dan {5, 6}.



Kami kemudian menggunakan loop tambahan untuk mengulangi setiap elemen dari setiap larik dan mencetak nilainya ke konsol.

2: Inisialisasi Array Menggunakan Kata Kunci baru

Metode tambahan untuk menginisialisasi array melibatkan penggunaan baru kata kunci. Ini melibatkan menentukan ukuran array dalam tanda kurung siku, diikuti dengan kata kunci baru, dan kemudian tipe data dari elemen array. Misalnya:

int [ ] angka = int baru [ 5 ] ;


Kode ini membuat array integer bernama angka dengan ukuran 5 dan menginisialisasi semua elemen ke nilai defaultnya, yaitu 0 untuk array integer.

Berikut sintaks untuk menginisialisasi array multidimensi menggunakan kata kunci baru di C#:

< jenis > [ , ] < namaarray > = baru < jenis > [ < panjang1 > , < panjang2 > , ... ] { { < nilai awal > } } ;


Dalam sintaks ini, adalah tipe data elemen array, adalah nama array, , , dan seterusnya adalah panjang array di setiap dimensi, dan adalah nilai awal dari elemen array.

Berikut adalah contoh cara menggunakan sintaks ini untuk menginisialisasi larik bilangan bulat 2 dimensi:

int [ , ] myArray = int baru [ 3 , 2 ] { { 1 , 2 } , { 3 , 4 } , { 5 , 6 } } ;


Dalam contoh ini, kami menginisialisasi array integer 2d bernama myArray dengan 3 baris dan 2 kolom menggunakan kata kunci baru. Kami juga memberikan nilai awal untuk setiap elemen array menggunakan sintaks kurung kurawal ganda. Nilainya adalah {1, 2}, {3, 4}, dan {5, 6}, sesuai dengan elemen di setiap baris.

Berikut adalah contoh cara menggunakan kata kunci baru untuk menginisialisasi array 1 dimensi dan 2 dimensi di C#, bersama dengan kode untuk mencetak nilai di setiap larik:

menggunakan Sistem;

larik kelas
{
kekosongan statis Utama ( rangkaian [ ] argumen )
{
// Inisialisasi a 1 -dimensi array
int [ ] myArray1D = int baru [ ] { 1 , 2 , 3 , 4 , 5 } ;
Console.WriteLine ( 'Nilai dalam myArray1D:' ) ;
untuk ( int saya = 0 ; Saya < myArray1D.Length; saya++ )
{
Console.WriteLine ( myArray1D [ Saya ] ) ;
}
// Inisialisasi a 2 -dimensi array
int [ , ] myArray2D = int baru [ , ] { { 1 , 2 } , { 3 , 4 } , { 5 , 6 } } ;
Console.WriteLine ( 'Nilai dalam myArray2D:' ) ;
untuk ( int saya = 0 ; Saya < myArray2D.GetLength ( 0 ) ; saya++ )
{
untuk ( int j = 0 ; J < myArray2D.GetLength ( 1 ) ; j++ )
{
Console.WriteLine ( '({0}, {1}): {2}' , i, j, myArray2D [ aku j ] ) ;
}
}
}
}


Dalam kode ini, kami menggunakan kata kunci baru untuk menginisialisasi array bilangan bulat satu dimensi yang disebut myArray1D dengan nilai 1, 2, 3, 4, dan 5, dan array integer 2 dimensi disebut myArray2D dengan nilai {1, 2}, {3, 4}, dan {5, 6}.

Kami kemudian menggunakan for loop untuk mengulangi setiap elemen dari setiap array dan mencetak nilainya ke konsol. Perhatikan bahwa untuk array 2 dimensi, kami menggunakan DapatkanPanjang() untuk menentukan jumlah baris dan kolom, dan menggunakan perulangan for bersarang untuk mengulangi setiap elemen.

3: Menginisialisasi Array Menggunakan Loop

Array juga dapat diinisialisasi menggunakan loop. Salah satu pendekatannya adalah menggunakan perulangan for, yang memungkinkan Anda melakukan iterasi melalui larik dan menetapkan nilai ke setiap elemen.

int [ ] angka = int baru [ 5 ] ;
untuk ( int saya = 0 ; Saya < angka.Panjang; saya++ )
{
angka [ Saya ] = saya + 1 ;
}


Kode ini membuat larik bilangan bulat bernama angka dengan ukuran 5 dan menetapkan nilai yang sama dengan indeksnya ditambah 1 untuk setiap elemen. Berikut adalah contoh cara menginisialisasi larik bilangan bulat 2 dimensi di C# menggunakan loop:

int [ , ] myArray = int baru [ 3 , 2 ] ;
untuk ( int saya = 0 ; Saya < 3 ; saya++ )
{
untuk ( int j = 0 ; J < 2 ; j++ )
{
myArray [ aku j ] = i + j;
}
}


Dalam contoh ini, kami menggunakan pengulangan for bersarang untuk melakukan iterasi melalui setiap elemen array integer 2 dimensi yang disebut myArray , yang memiliki 3 baris dan 2 kolom. Untuk setiap elemen, kami menyetel nilainya ke jumlah indeks baris dan kolomnya menggunakan ekspresi i + j.

Berikut adalah contoh cara menggunakan loop untuk menginisialisasi array 1 dimensi dan 2 dimensi di C#, beserta kode untuk mencetak nilai di setiap array:

menggunakan Sistem;

larik kelas
{
kekosongan statis Utama ( rangkaian [ ] argumen )
{
// Inisialisasi a 1 -dimensi array menggunakan loop
int [ ] myArray1D = int baru [ 5 ] ;
untuk ( int saya = 0 ; Saya < myArray1D.Length; saya++ )
{
myArray1D [ Saya ] = saya + 1 ;
}
Console.WriteLine ( 'Nilai dalam myArray1D:' ) ;
untuk ( int saya = 0 ; Saya < myArray1D.Length; saya++ )
{
Console.WriteLine ( myArray1D [ Saya ] ) ;
}
// Inisialisasi a 2 -dimensi array menggunakan loop bersarang
int [ , ] myArray2D = int baru [ 3 , 2 ] ;
untuk ( int saya = 0 ; Saya < 3 ; saya++ )
{
untuk ( int j = 0 ; J < 2 ; j++ )
{
myArray2D [ aku j ] = i + j;
}
}
Console.WriteLine ( 'Nilai dalam myArray2D:' ) ;
untuk ( int saya = 0 ; Saya < 3 ; saya++ )
{
untuk ( int j = 0 ; J < 2 ; j++ )
{
Console.WriteLine ( '({0}, {1}): {2}' , i, j, myArray2D [ aku j ] ) ;
}
}
}
}


Dalam kode ini, kita menggunakan loop for untuk menginisialisasi array integer 1 dimensi yang disebut myArray1D dengan nilai 1, 2, 3, 4, dan 5. Kita juga menggunakan loop for bersarang untuk menginisialisasi array integer 2 dimensi yang disebut myArray2D dengan nilai {0, 1}, {1, 2}, dan {2, 3} menggunakan ekspresi i + j.

Kemudian gunakan loop for tambahan untuk melakukan iterasi melalui setiap elemen dari setiap array dan mencetak nilainya ke konsol.

4: Menginisialisasi Array Menggunakan Array.Copy()

Pendekatan alternatif untuk menginisialisasi array melibatkan penggunaan fungsi Array.Copy() . Ini melibatkan pembuatan larik sumber dengan elemen yang diinginkan dan kemudian menyalinnya ke larik target. Misalnya:

int [ ] sumber = { 1 , 2 , 3 , 4 , 5 } ;
int [ ] target = int baru [ sumber.Panjang ] ;
Larik.Salin ( sumber , target, sumber.Panjang ) ;


Kode ini membuat larik bilangan bulat bernama sumber dengan nilai 1 hingga 5, membuat larik bilangan bulat baru bernama target dengan ukuran yang sama dengan sumber, lalu menyalin elemen dari sumber ke sasaran.

Izinkan saya menyajikan contoh yang mendemonstrasikan pemanfaatan Array.Copy untuk menginisialisasi array integer dua dimensi di C#:

int [ , ] sumberArray = { { 1 , 2 } , { 3 , 4 } , { 5 , 6 } } ;
int [ , ] destinationArray = int baru [ 3 , 2 ] ;

Larik.Salin ( sourceArray, destinationArray, sourceArray.Length ) ;


Dalam contoh ini, kami memiliki array integer 2 dimensi yang disebut sumberArray dengan 3 baris dan 2 kolom. Kami menggunakan Larik.Salin() untuk menyalin isi sourceArray ke array integer 2 dimensi baru yang disebut destinationArray, yang juga memiliki 3 baris dan 2 kolom.

Itu Larik.Salin() metode mengambil tiga argumen : itu larik sumber , itu larik tujuan , dan panjang dari data yang akan disalin. Dalam hal ini, kami menyalin seluruh konten dari sumberArray ke dalam destinationArray , jadi kami lulus sourceArray.Length sebagai argumen ketiga.

Perhatikan bahwa Anda dapat menggunakan Larik.Salin() untuk menginisialisasi array dengan sejumlah dimensi, asalkan array sumber dan tujuan memiliki jumlah dimensi yang sama dan ukuran yang sama di setiap dimensi.

Juga, perlu diingat bahwa Larik.Salin() melakukan salinan dangkal dari larik sumber, yang berarti bahwa jika larik sumber berisi tipe referensi, referensi akan disalin tetapi objeknya sendiri tidak akan digandakan.

Berikut adalah kode lengkap yang digunakan Larik.Salin() fungsi untuk menginisialisasi array di C#:

menggunakan Sistem;

larik kelas
{
kekosongan statis Utama ( rangkaian [ ] argumen )
{
// Inisialisasi a 1 -dimensi array menggunakan Array.Copy
int [ ] sumberArray1D = { 1 , 2 , 3 , 4 , 5 } ;
int [ ] destinationArray1D = int baru [ 5 ] ;
Larik.Salin ( sourceArray1D, destinationArray1D, sourceArray1D.Length ) ;
Console.WriteLine ( 'Nilai di destinationArray1D:' ) ;
untuk ( int saya = 0 ; Saya < destinationArray1D.Length; saya++ ) {
Console.WriteLine ( destinationArray1D [ Saya ] ) ;
}
// Inisialisasi a 2 -dimensi array menggunakan Array.Copy
int [ , ] sumberArray2D = { { 1 , 2 } , { 3 , 4 } , { 5 , 6 } } ;
int [ , ] destinationArray2D = int baru [ 3 , 2 ] ;
Larik.Salin ( sourceArray2D, destinationArray2D, sourceArray2D.Length ) ;
Console.WriteLine ( 'Nilai di destinationArray2D:' ) ;
untuk ( int saya = 0 ; Saya < destinationArray2D.GetLength ( 0 ) ; saya++ ) {
untuk ( int j = 0 ; J < destinationArray2D.GetLength ( 1 ) ; j++ ) {
Console.WriteLine ( '({0}, {1}): {2}' , i, j, destinationArray2D [ aku j ] ) ;
}
}
}
}


Dalam kode ini, kami menggunakan Larik.Salin() untuk menginisialisasi array integer 1-dimensi yang disebut destinationArray1D dengan nilai 1, 2, 3, 4, dan 5 dari array sumber yang disebut sourceArray1D.

Kami juga menggunakan Larik.Salin() untuk menginisialisasi larik bilangan bulat 2 dimensi bernama destinationArray2D dengan nilai {1, 2}, {3, 4}, dan {5, 6} dari larik sumber yang disebut sourceArray2D.

Kami kemudian menggunakan loop tambahan untuk mengulangi setiap elemen dari setiap array dan mencetak nilainya ke konsol.

Kesimpulan

Pada artikel ini, kami menjelajahi berbagai cara untuk menginisialisasi array di C#. Kita membahas sintaks penginisialisasi array, menggunakan kata kunci baru, menginisialisasi array menggunakan perulangan, dan menggunakan metode Array.Copy(). Bergantung pada kasus penggunaan tertentu, masing-masing metode ini memiliki kelebihan dan kekurangannya sendiri. Membiasakan diri dengan beragam pendekatan ini akan memungkinkan Anda memilih yang paling cocok untuk kebutuhan khusus Anda.