Variabel #
Dalam Kotlin, variabel digunakan untuk menyimpan data yang dapat digunakan dan dimanipulasi selama eksekusi program. Kotlin mendukung dua jenis variabel utama: val dan var. Keduanya memiliki peran dan karakteristik yang berbeda.
val (Immutable Variable)
#
Variabel yang dideklarasikan dengan val adalah variabel yang bersifat immutable atau konstan. Setelah diinisialisasi, nilainya tidak dapat diubah.
Deklarasi dan Inisialisasi #
val pi = 3.14
Penjelasan:
valmenunjukkan bahwapiadalah variabel konstan.- Anda hanya dapat menetapkan nilai satu kali, dan nilai ini tidak dapat diubah setelahnya.
Contoh Penggunaan #
val name = "Alice"
println(name) // Output: Alice
// name = "Bob" // Error: Val cannot be reassigned
var (Mutable Variable)
#
Variabel yang dideklarasikan dengan var adalah variabel yang bersifat mutable atau dapat diubah. Anda dapat menetapkan dan mengubah nilainya setelah inisialisasi.
Deklarasi dan Inisialisasi #
var age = 30
Penjelasan:
varmenunjukkan bahwaageadalah variabel yang nilainya dapat diubah.- Anda dapat mengubah nilai variabel ini di kemudian hari.
Contoh Penggunaan #
var age = 30
println(age) // Output: 30
age = 31
println(age) // Output: 31
Tipe Data dan Inferensi #
Kotlin menggunakan inferensi tipe untuk menentukan tipe data variabel secara otomatis berdasarkan nilai yang diberikan. Namun, Anda juga dapat menentukan tipe data secara eksplisit.
Inferensi Tipe #
val name = "Bob" // Tipe data String diinferensikan secara otomatis
var age = 25 // Tipe data Int diinferensikan secara otomatis
Tipe Data Eksplisit #
val name: String = "Bob"
var age: Int = 25
Variabel Null Safe #
Kotlin mendukung fitur null safety untuk menghindari NullPointerException. Variabel yang dapat menampung nilai null dideklarasikan dengan menambahkan ? pada tipe data.
Contoh Variabel Nullable #
var address: String? = null
Penjelasan:
addressdapat menampung nilainullselain dari nilaiString.
Penggunaan Variabel Nullable #
var address: String? = "123 Main St"
println(address?.length) // Output: 12 (Jika address tidak null)
address = null
println(address?.length) // Output: null
Variabel dengan Tipe Data Khusus #
-
Array
val numbers: IntArray = intArrayOf(1, 2, 3, 4, 5) -
List
val names: List<String> = listOf("Alice", "Bob", "Charlie") -
Map
val map: Map<String, Int> = mapOf("Alice" to 30, "Bob" to 25)
Variabel dalam Fungsi #
Variabel dalam fungsi memiliki cakupan lokal dan hanya dapat diakses di dalam fungsi tersebut.
fun greet() {
val message = "Hello, World!" // Variabel lokal
println(message)
}
Penjelasan:
messagehanya dapat diakses di dalam fungsigreetdan tidak dapat diakses dari luar fungsi tersebut.
lateinit dan by lazy
#
Kotlin menyediakan cara untuk menunda inisialisasi variabel dengan lateinit untuk variabel yang dapat diubah dan by lazy untuk variabel konstan.
lateinit
#
Digunakan untuk menunda inisialisasi variabel non-nullable.
lateinit var name: String
fun initialize() {
name = "Alice"
}
Penjelasan:
lateinitmemungkinkan Anda untuk menunda inisialisasi variabelnamehingga nanti.
by lazy
#
Digunakan untuk inisialisasi variabel secara malas (lazy initialization).
val pi: Double by lazy {
3.14159
}
Penjelasan:
pihanya diinisialisasi saat pertama kali diakses.
Kesimpulan #
Variabel dalam Kotlin memungkinkan Anda menyimpan dan memanipulasi data selama eksekusi program. Dengan menggunakan val untuk variabel konstan dan var untuk variabel yang dapat diubah, serta fitur tambahan seperti null safety, lateinit, dan by lazy, Anda dapat menulis kode yang aman dan efisien.