Tipe yang Dapat Bernilai Null
Termasuk bagian Dasar-Dasar dalam perjalanan Kotlin di Coddy. Pelajaran 13 dari 93.
Terkadang kamu benar-benar membutuhkan variabel yang dapat menyimpan nilai "kosong". Misalnya, nama tengah pengguna mungkin tidak ada, atau pencarian mungkin tidak menghasilkan apa pun. Kotlin memungkinkan hal ini melalui tipe nullable.
Untuk membuat tipe dapat bernilai null, tambahkan ? setelah nama tipe:
fun main() {
var middleName: String? = "Marie"
middleName = null // Ini sekarang diperbolehkan!
val age: Int? = null // Bisa menyimpan Int atau null
}? memberi tahu Kotlin: "Variabel ini mungkin bernilai null, jadi berhati-hatilah saat menggunakannya." Tanpa ?, tipe ini tidak dapat bernilai null.
Penting: Tipe nullable dan non-nullable berbeda. Kamu tidak dapat langsung menetapkan nilai nullable ke variabel non-nullable:
fun main() {
val nullableName: String? = "Alice"
val regularName: String = nullableName // error!
}Pembedaan ini disengaja. Ini mengharuskan kamu menangani kemungkinan nilai null sebelum menggunakan nilainya. Dalam pelajaran berikutnya, kamu akan mempelajari cara aman yang disediakan Kotlin untuk menangani nilai yang dapat bernilai null.
Tantangan
MudahDeklarasikan variabel berikut yang dapat bernilai null:
Stringyang dapat bernilai null bernamanicknamedengan nilai"Shadow"Intyang dapat bernilai null bernamaagedengan nilainullDoubleyang dapat bernilai null bernamabalancedengan nilai99.5
Lalu cetak ketiga nilai tersebut pada baris terpisah menggunakan println().
Ingat untuk menggunakan
?setelah nama tipe agar variabel dapat bernilai null. Mencetak nilainullakan menampilkan katanull.
Coba sendiri
fun main() {
// TODO: Deklarasikan variabel nullable berikut:
// 1. String nullable bernama 'nickname' dengan nilai "Shadow"
// 2. Int nullable bernama 'age' dengan nilai null
// 3. Double nullable bernama 'balance' dengan nilai 99.5
// Lalu cetak ketiga nilai tersebut pada baris terpisah
}Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
4Operator Bagian 1
Operator AritmetikaOperator ModuloPenugasan GabunganOperator PerbandinganRingkasan: Matematika Sederhana7Dasar input dan output
Fungsi PrintlnTemplate stringInput ReadLineKonversi Tipe DataRingkasan: Tahun hingga PensiunRingkasan: Benar atau Salah10Fungsi
Deklarasikan FungsiParameter dan ArgumenNilai KembalianArgumen BernamaNilai DefaultFungsi Ekspresi TunggalUlasan: Fungsi SigmaUlasan: Fungsi Validasi5Operator Bagian 2
Operator Logika Bagian 1Operator Logika Bagian 2Operator Logika Bagian 3Ternary dengan Ekspresi ifRangkuman: Logika Sederhana8Kalkulator Pembagi Tagihan
Pesan Selamat DatangMenerima Input11FizzBuzz dengan Sentuhan Unik
Gambaran Umum GameFungsi FizzBuzz3Kemungkinan Null
Apa Itu Keamanan NullTipe yang Dapat Bernilai NullOperator Pemanggilan AmanOperator ElvisDasar Tantangan FungsiPenegasan Bukan NullRangkuman: Akses Aman6Pengambilan Keputusan
Pernyataan IfIf - ElseIf sebagai EkspresiEkspresi WhenWhen dengan RentangUlasan - Kalkulator Sederhana9Perulangan
For loopWhile loopDo-while loopBreakContinueRentang dalam loopLoop BersarangRingkasan: FaktorialRingkasan: Input DinamisLatihan sendiri: Playground Kotlin