Apa itu Operator Penggabungan Null di C #

Apa Itu Operator Penggabungan Null Di C



C# adalah bahasa pemrograman yang banyak digunakan yang dirancang untuk membuat aplikasi yang efisien dan kuat untuk berbagai platform. Bahasa ini memiliki banyak fitur canggih, termasuk operator penggabungan nol , yang membantu menyederhanakan kode kompleks dengan menyediakan sintaks ringkas untuk menangani nilai nol. Operator ini telah menjadi populer di kalangan pengembang yang mencari metode mudah untuk ditangani batal nilai-nilai dalam proyek mereka.

Artikel ini akan menjelaskan secara rinci tentang operator penggabungan nol .







Apa itu Operator Penggabungan Null di C #

Dalam C#, simbol untuk operator penggabungan nol adalah ?? . Jika suatu variabel adalah nol, itu digunakan untuk memberinya nilai default.



Misalnya, jika kita memiliki variabel X itu bisa nol dan kami ingin menetapkannya sebagai nilai default 10 jika itu nol, kami dapat menggunakan operator penggabungan nol sebagai berikut:



int y = x ?? 10





Pernyataan ini akan memberikan nilai 10 ke y jika x adalah nol, jika tidak, akan mengambil nilai x.

Ini akan mengembalikan nilai operan kiri jika bukan nol. Operan tangan kanan diperiksa dan hasilnya dikembalikan jika null. Alternatifnya, jika operan sebelah kiri dievaluasi menjadi non-null, operan sebelah kanannya tidak dievaluasi.



Cara tradisional untuk menulis kode tanpa operator penggabungan nol adalah:

jika ( hasilnya nol )

kembali Daftar baru < Orang > ( ) ;

kembali hasil;

Kita dapat memadatkan ini menjadi satu baris yang berisi nilai default non-null dan cek null menggunakan operator penggabungan nol :

kembali hasil ?? Daftar baru < Orang > ( ) ;

Beberapa poin penting untuk diingat tentang operator penggabungan nol adalah:

  • Variabel harus merupakan operan sebelah kiri dari ?? operator.
  • Operand sebelah kiri operator ??= tidak boleh berupa tipe yang tidak dapat dibatalkan.
  • Operator null-coalescing tidak dapat kelebihan beban.
  • Operator null-coalescing adalah asosiatif-kanan. Ini berarti ekspresi seperti a ??= b ??= c akan dievaluasi sebagai a ??= (b ??= c).

Penggunaan Operator Penggabungan Null

Kegunaan dari operator penggabungan nol adalah:

1: Memberikan Nilai Default

Saat bekerja dengan tipe nullable, jika nilainya null, Anda dapat menggunakan the operator penggabungan nol untuk memberikan nilai default alih-alih melempar pengecualian.

menggunakan Sistem;

program kelas umum
{
public static void Main ( )
{
int? nullableValue = null;
int nilai = nullableValue ?? 10 ;
Console.WriteLine ( 'Nilainya adalah:' + nilai ) ;
}
}

Dalam contoh di atas, kita mendefinisikan bilangan bulat nullableValue variabel dan beri nilai nol. Itu operator penggabungan nol kemudian digunakan untuk memberikan variabel nilai nilai default 10 jika nullableValue adalah null. Selanjutnya, nilainya ditampilkan di konsol.

2: Menghindari Pengecualian Referensi Null

Nilai kosong mungkin menghasilkan pengecualian referensi nol saat bekerja dengan struktur data canggih seperti objek dan larik. Pengecualian ini dapat dihindari dengan menggunakan operator penggabungan nol , yang memberikan nilai default.

menggunakan Sistem;

kelas publik myClass
{
Nama string publik { mendapatkan; mengatur ; }
ID int publik { mendapatkan; mengatur ; }
}
program kelas umum
{
public static void Main ( )
{
orang myClass = null;
string nama = orang?.Nama ?? 'Tidak dikenal' ;
int pengenal = orang?.ID ?? 0 ;
Console.WriteLine ( 'Nama:' + nama ) ;
Console.WriteLine ( 'PENGENAL: ' + pengenal ) ;
}
}

Nama Dan PENGENAL adalah atribut dari kelasku kelas dalam kode di atas. Untuk mengakses dengan aman Nama Dan PENGENAL properti dari objek person dan memberikan nilai default jika null, itu menetapkan variabel person ke null dan kemudian menggunakan operator kondisional null (?.) dan operator penggabungan nol (??). Kemudian, konsol dicetak dengan nilai nama dan id.

3: Menghapus Kondisi if-else Redundan

Anda juga dapat menggunakan operator penggabungan nol untuk membuat kode Anda lebih ringkas dan mudah dibaca dengan menghilangkan kebutuhan akan redundan kondisi if-else .

Misalnya:

menggunakan Sistem;

Contoh namespace
{
kelas myClass
{
kekosongan statis Utama ( rangkaian [ ] argumen )
{
int? nullableValue = null;
nilai int;
jika ( nullableValue ! = nol )
{
nilai = nullableValue.Nilai;
}
kalau tidak
{
nilai = 10 ;
}
Console.WriteLine ( 'Nilainya adalah:' + nilai ) ;
}
}
}

Dalam kode di atas, operator penggabungan nol ?? digunakan untuk menentukan nilai dari nullableValue untuk menilai. Jika nullableValue bukan null, maka nilainya akan sama dengan nullableValue . Jika nullableValue adalah null, maka nilainya akan memiliki nilai 10. The jika-lain kondisi tidak lagi diperlukan, dan kode sekarang lebih pendek dan lebih mudah dipahami.

Kesimpulan

Itu operator penggabungan nol di C# adalah fitur canggih yang menyederhanakan cara pengembang menangani nilai nol dalam proyek mereka. Operator ini menyediakan sintaks yang ringkas, efisien, dan fleksibel untuk menetapkan nilai default ke variabel yang mungkin null. Dengan menggunakan operator penggabungan nol , pengembang dapat menulis kode yang lebih mudah dibaca, dipelihara, dan efisien, menghemat waktu dan tenaga dalam proses pengembangan.