Memperkenalkan Tipe Nilai Nullable
Deklarasikan int?, double?, dan pahami Nullable .
Memperkenalkan Tipe Nilai Nullable adalah pelajaran C# Academy gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar C# Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus C# Academy mencakup 4 pelajaran total.
Tipe Nilai Tidak Dapat Bernilai Kosong
Biasanya, sebuah int selalu menyimpan bilangan; nilainya tidak pernah dapat berupa null. Terkadang Anda perlu menyatakan “tidak ada nilai”, misalnya untuk pengukuran yang tidak tersedia.
using System;
class Program {
static void Main() {
int count = 0;
Console.WriteLine(count);
}
}Tipe yang Dapat Bernilai Kosong dengan ?
Tambahkan ? setelah tipe nilai agar tipe tersebut dapat bernilai kosong. int? dapat menyimpan int atau null.
using System;
class Program {
static void Main() {
int? maybe = null;
Console.WriteLine(maybe.HasValue);
maybe = 42;
Console.WriteLine(maybe);
}
}Tipe Lain yang Dapat Bernilai Kosong
Tipe nilai apa pun dapat dibuat agar dapat bernilai kosong: double?, bool?, DateTime?, dan seterusnya.
using System;
class Program {
static void Main() {
double? temp = null;
bool? flag = true;
Console.WriteLine(temp.HasValue + " " + flag);
}
}Penulisan Lengkap Tipe yang Dapat Bernilai Kosong
int? hanyalah bentuk singkat dari struktur Nullable<int>. Keduanya dikompilasi menjadi tipe yang sama persis.
using System;
class Program {
static void Main() {
Nullable<int> a = 10;
int? b = 10;
Console.WriteLine(a == b);
}
}Menetapkan Nilai Kosong
Anda dapat menetapkan null ke variabel yang dapat bernilai kosong, lalu menetapkan kembali nilai sebenarnya kapan saja.
using System;
class Program {
static void Main() {
int? id = 100;
Console.WriteLine(id);
id = null;
Console.WriteLine(id.HasValue);
}
}Mencetak Nilai yang Dapat Bernilai Kosong
Mencetak nilai yang dapat bernilai kosong dan berisi null menghasilkan teks kosong, bukan teks yang menyatakan nilai kosong.
using System;
class Program {
static void Main() {
int? value = null;
Console.WriteLine("[" + value + "]");
}
}Konversi Implisit ke Tipe yang Dapat Bernilai Kosong
int biasa secara otomatis dikonversi menjadi int? karena setiap int merupakan nilai int yang valid dan dapat bernilai kosong.
using System;
class Program {
static void Main() {
int x = 7;
int? y = x;
Console.WriteLine(y);
}
}Tipe yang Dapat Bernilai Kosong pada Nilai Kembalian Metode
Metode dapat mengembalikan tipe yang dapat bernilai kosong untuk menandakan “nilai ditemukan” atau “tidak menemukan apa pun”.
using System;
class Program {
static int? FindEven(int[] nums) {
foreach (int n in nums)
if (n % 2 == 0) return n;
return null;
}
static void Main() {
Console.WriteLine(FindEven(new[] {1, 3, 4}));
}
}Membandingkan Nilai yang Dapat Bernilai Kosong
Kesetaraan bekerja sesuai harapan: dua nilai yang dapat bernilai kosong dianggap sama jika keduanya bernilai kosong atau menyimpan nilai yang sama.
using System;
class Program {
static void Main() {
int? a = null;
int? b = null;
Console.WriteLine(a == b);
int? c = 5;
Console.WriteLine(c == 5);
}
}Mengapa Menggunakan Tipe yang Dapat Bernilai Kosong
Tipe nilai yang dapat bernilai kosong memodelkan data opsional dengan rapi, misalnya kolom basis data yang mengizinkan NULL atau bidang yang dibiarkan kosong oleh pengguna.
using System;
class Program {
static void Main() {
int? userAge = null;
string msg = userAge.HasValue ? "Age set" : "Age unknown";
Console.WriteLine(msg);
}
}Tipe yang Dapat Bernilai Kosong adalah Struktur
Nullable<T> sendiri merupakan tipe nilai, sehingga variabel yang dapat bernilai kosong bukan referensi, meskipun dapat berisi nilai kosong.
using System;
class Program {
static void Main() {
int? n = 3;
Console.WriteLine(n.GetType().Name);
}
}Uji Cepat
Uji pemahaman Anda tentang tipe nilai yang dapat bernilai kosong.
Ringkasan
Tipe nilai seperti int secara bawaan tidak dapat bernilai kosong. Penambahan ? membuat tipe yang dapat bernilai kosong (int?), yang merupakan bentuk singkat dari Nullable<T>.
Tipe yang dapat bernilai kosong memungkinkan Anda menyatakan data yang hilang atau opsional, dikonversi secara implisit dari tipe dasarnya, dan tipe tersebut sendiri merupakan struktur.
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Memperkenalkan Tipe Nilai Nullable” gratis?
Ya — teks lengkap “Memperkenalkan Tipe Nilai Nullable” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus C# Academy, upgrade ke CoddyKit PRO. Kursus C# Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Memperkenalkan Tipe Nilai Nullable”?
Deklarasikan int?, double?, dan pahami Nullable . Kamu berlatih C# Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai C# Academy?
Tidak diperlukan pengalaman sebelumnya. C# Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.
Berapa lama pelajaran “Memperkenalkan Tipe Nilai Nullable” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran C# Academy ini?
Ya. Setiap pelajaran C# Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Memperkenalkan Tipe Nilai Nullable
- Properti HasValue dan Value
- Operator Null-Coalescing
- Nullable dalam Perhitungan