Masukkan Password
08 Kursus Kotlin Lengkap #7 - Char & Boolean di Kotlin
Bagian ini melanjutkan tipe data dasar Kotlin. Setelah sebelumnya belajar angka (Int, Double, Float, dll.), sekarang kita belajar dua tipe data penting:
Char→ menyimpan satu karakterBoolean→ menyimpantrueataufalse
Saya akan jelaskan dari dasar dan sekaligus meluruskan beberapa bagian subtitle yang kurang tepat.
1. Apa itu Char?
Char adalah tipe data yang digunakan untuk menyimpan satu karakter.
Contohnya:
val letter: Char = 'K'
Di sini:
letter → 'K'
letter memiliki tipe:
Char
2. Apa yang dimaksud “satu karakter”?
Satu karakter berarti hanya satu simbol.
Contoh yang valid:
val a: Char = 'A'
val b: Char = 'B'
val number: Char = '7'
val symbol: Char = '#'
Semua valid karena masing-masing hanya mempunyai satu karakter.
Bahkan spasi juga merupakan satu karakter:
val space: Char = ' '
3. Char menggunakan single quotation
Ini sangat penting.
Char menggunakan tanda kutip satu:
'A'
Bukan:
"A"
Perbedaannya:
'A' → Char
"A" → String
Jadi:
val letter: Char = 'A'
✅ benar.
Sedangkan:
val letter: Char = "A"
❌ salah.
Karena "A" adalah String, bukan Char.
4. Char hanya satu karakter
Misalnya:
val letter: Char = 'K'
✅
Tetapi:
val letter: Char = 'Hello'
❌
Karena Hello memiliki lima karakter.
Begitu juga:
val letter: Char = 'AB'
❌
Karena ada dua karakter.
Jadi:
'A' → ✅ satu karakter
'7' → ✅ satu karakter
'#' → ✅ satu karakter
'AB' → ❌ dua karakter
'Hello' → ❌ lima karakter
5. Char vs String
Ini salah satu hal yang wajib kamu bedakan sejak awal.
Char
Menyimpan satu karakter:
val grade: Char = 'A'
String
Menyimpan teks, yang bisa terdiri dari banyak karakter:
val name: String = "Andi"
Perhatikan quotation-nya:
Char
'A'
↑
single quote
dan:
String
"Andi"
↑
double quote
Cara mudah mengingat:
Single quote →
CharDouble quote →String
6. Contoh sederhana
fun main() {
val letter: Char = 'K'
println(letter)
}
Output:
K
Tidak ada tanda ' pada output.
Tanda ' hanya digunakan oleh Kotlin untuk menunjukkan bahwa 'K' adalah literal Char.
7. Bagaimana dengan angka sebagai Char?
Ini agak menarik.
Kita bisa membuat:
val number: Char = '7'
Ini valid.
Tetapi perlu dipahami:
'7'
adalah karakter, bukan angka 7 untuk perhitungan matematika.
Bandingkan:
val a: Char = '7'
val b: Int = 7
Walaupun tampilannya mirip:
'7' → Char
7 → Int
Mereka adalah dua tipe berbeda.
8. Char tidak sama dengan Int
Misalnya:
val character: Char = '7'
Kita tidak bisa menganggap:
character = 7
karena:
'7' → Char
7 → Int
Ini berbeda.
Untuk mengubah karakter digit menjadi angka, nanti kita bisa menggunakan conversion tertentu, misalnya:
val character: Char = '7'
val number: Int = character.digitToInt()
Hasilnya:
'7' → 7
Ini contoh konversi dari karakter digit menjadi angka.
9. Perbedaan Kotlin dengan Java
Video kemudian membandingkan Kotlin dengan Java.
Di Java, char merupakan tipe numerik 16-bit yang dapat berinteraksi dengan operasi angka tertentu dan merepresentasikan unit kode UTF-16.
Misalnya di Java kita bisa menemukan konsep:
'A' → 65
karena A memiliki nilai kode tertentu dalam Unicode/ASCII.
Tetapi Kotlin tidak memperlakukan Char sebagai Int secara langsung dalam operasi seperti itu.
Jadi untuk pemula, anggap:
Chardi Kotlin adalah tipe karakter tersendiri, bukanInt.
Ini merupakan perbedaan penting dengan cara Java memperlakukan char.
10. Bagaimana dengan Unicode?
Subtitle video mengatakan kurang lebih bahwa kita tidak bisa menentukan Unicode dengan cara seperti Java.
Ini perlu sedikit diluruskan.
Kotlin tetap mendukung Unicode.
Misalnya:
val letter: Char = '\u0041'
Hasilnya adalah:
A
Karena:
\u0041 → A
Jadi pernyataan:
“Kotlin tidak bisa menggunakan Unicode”
❌ tidak benar.
Kotlin bisa menggunakan Unicode escape.
Contoh:
val heart: Char = '\u2665'
println(heart)
Bisa menghasilkan karakter:
♥
Jadi yang benar:
Kotlin tidak mengizinkan kita memperlakukan
Charsebagai angka secara langsung seperti contoh Java tertentu, tetapi Kotlin tetap mendukung Unicode.
11. Contoh karakter Unicode
Misalnya:
val a: Char = '\u0041'
val b: Char = '\u0042'
Hasilnya:
A
B
Atau:
val symbol: Char = '\u2764'
menghasilkan simbol Unicode tertentu.
Tetapi sebagai pemula, kamu biasanya cukup menulis karakter secara langsung:
val letter: Char = 'A'
Tidak perlu menggunakan Unicode escape kecuali memang diperlukan.
12. Kenapa Char terasa jarang digunakan?
Video mengatakan Char mungkin tidak terlalu sering digunakan.
Itu cukup masuk akal.
Dalam aplikasi sehari-hari, kita lebih sering bekerja dengan:
String
daripada:
Char
Misalnya:
val name = "Budi"
lebih umum daripada:
val firstLetter: Char = 'B'
Tetapi Char tetap penting karena sebuah String pada dasarnya merupakan rangkaian karakter.
Misalnya:
"Budi"
secara konseptual terdiri dari karakter:
B → u → d → i
Nanti ketika belajar String, kamu akan melihat hubungan ini lebih jelas.
13. Sekarang masuk ke Boolean
Setelah Char, video masuk ke:
Boolean
Boolean adalah tipe data yang hanya memiliki dua kemungkinan nilai:
true
false
Tidak ada nilai ketiga.
14. Contoh Boolean
val flag: Boolean = true
atau:
val flag: Boolean = false
Kita bisa mencetaknya:
println(flag)
Jika:
val flag = true
output:
true
Jika:
val flag = false
output:
false
15. Kenapa disebut Boolean?
Boolean digunakan untuk merepresentasikan kondisi yang hanya mempunyai dua keadaan.
Contohnya:
Lampu menyala?
→ true / false
User sudah login?
→ true / false
Password benar?
→ true / false
Game sedang berjalan?
→ true / false
Mobil sedang bergerak?
→ true / false
Jadi Boolean sangat erat hubungannya dengan pengambilan keputusan.
16. Contoh dengan login
Misalnya:
val isLoggedIn: Boolean = true
Artinya:
User sedang login → YA
Kalau:
val isLoggedIn: Boolean = false
Artinya:
User sedang login → TIDAK
Nama isLoggedIn juga bagus karena langsung menjelaskan maksud variable.
17. Boolean biasanya digunakan dengan if
Ini yang dimaksud video ketika mengatakan Boolean digunakan dalam decision-making statements.
Misalnya:
val isLoggedIn = true
if (isLoggedIn) {
println("Welcome!")
}
Karena:
isLoggedIn = true
maka kondisi if terpenuhi dan program mencetak:
Welcome!
Kalau:
val isLoggedIn = false
blok tersebut tidak dijalankan.
18. Contoh Boolean dalam kehidupan sehari-hari
Bayangkan kamu ingin membuat program ATM.
val hasEnoughBalance = true
Kemudian:
if (hasEnoughBalance) {
println("Withdrawal successful")
}
Boolean berfungsi seperti pertanyaan:
“Apakah saldo mencukupi?”
Jawabannya hanya:
true → Ya
false → Tidak
19. Boolean juga muncul dari perbandingan
Ini akan menjadi sangat penting ketika kamu belajar operator.
Misalnya:
val age = 20
Kemudian:
age >= 18
Hasil expression tersebut adalah:
true
Karena:
20 >= 18
benar.
Contoh:
val result = age >= 18
Maka:
result → Boolean
result → true
20. Contoh perbandingan lainnya
val a = 10
val b = 20
println(a > b)
Hasil:
false
Karena:
10 > 20
salah.
Sedangkan:
println(a < b)
hasilnya:
true
Karena:
10 < 20
benar.
21. Boolean bukan angka
Jangan menganggap:
true = 1
false = 0
sebagai tipe Kotlin.
Dalam Kotlin:
val isActive = true
memiliki tipe:
Boolean
Bukan Int.
Jadi kita tidak memperlakukan Boolean sebagai angka secara langsung.
22. Boolean juga bisa menggunakan val atau var
Sama seperti tipe data lainnya.
val
val isOnline = true
Tidak bisa:
isOnline = false
karena val tidak boleh di-assign ulang.
var
var isOnline = true
Kemudian:
isOnline = false
✅ Bisa.
Ini sangat masuk akal untuk status yang berubah.
Misalnya status koneksi:
var isConnected = false
isConnected = true
23. Penamaan Boolean biasanya dibuat seperti pertanyaan
Ini merupakan kebiasaan yang bagus.
Daripada:
var login = true
lebih jelas:
var isLoggedIn = true
Daripada:
var active = true
lebih jelas:
var isActive = true
Daripada:
var student = true
lebih jelas:
var isStudent = true
Karena ketika dibaca:
if (isLoggedIn) {
otak kita otomatis membaca:
“Apakah user sedang login?”
24. Contoh Char dan Boolean sekaligus
fun main() {
val grade: Char = 'A'
val isPassed: Boolean = true
println(grade)
println(isPassed)
}
Output:
A
true
Di sini kita memiliki dua tipe:
grade → Char
isPassed → Boolean
25. Hubungkan dengan tipe yang sudah dipelajari
Sekarang kita sudah mengenal beberapa tipe dasar Kotlin:
Kotlin basic types
│
┌───────────────┼────────────────┐
│ │ │
Number Character Boolean
│ │ │
┌──────┼──────┐ │ true / false
│ │ │ │
Byte Int Double Char
│ │ │
Short Long Float
Dan kita juga sudah belajar:
String
yang akan dibahas lebih dalam setelah ini.
26. Cheat sheet
Berikut rangkuman yang bagus untuk kamu simpan:
| Tipe | Digunakan untuk | Contoh |
|---|---|---|
Byte | integer kecil | 100 |
Short | integer | 10000 |
Int | integer umum | 100000 |
Long | integer sangat besar | 10000000000L |
Float | pecahan, presisi lebih rendah | 3.14f |
Double | pecahan, presisi lebih tinggi | 3.14 |
Char | satu karakter | 'A' |
Boolean | benar/salah | true |
Dan String:
| Tipe | Digunakan untuk | Contoh |
|---|---|---|
String | teks | "Hello" |
27. Perbedaan Char, String, dan Int
Ini sangat penting karena ketiganya kadang terlihat mirip.
val a: Char = '7'
val b: String = "7"
val c: Int = 7
Walaupun semuanya terlihat seperti “7”, sebenarnya:
'7' → Char
"7" → String
7 → Int
Bayangkan:
'7'
│
└── satu karakter
"7"
│
└── teks yang kebetulan berisi karakter 7
7
│
└── angka yang bisa digunakan untuk matematika
28. Contoh yang memperjelas perbedaan
val character: Char = '5'
val text: String = "5"
val number: Int = 5
Secara visual:
character → '5'
text → "5"
number → 5
Ketiganya berbeda.
Misalnya kita bisa melakukan:
println(number + 10)
Hasil:
15
Karena number adalah Int.
Sedangkan character bukan angka untuk operasi matematika biasa.
29. Kenapa Boolean sangat penting untuk programming?
Karena hampir semua program harus membuat keputusan.
Misalnya aplikasi toko online:
Apakah user sudah login?
↓
true?
/ \
Ya Tidak
↓ ↓
Checkout Login
Program game:
Apakah player masih hidup?
↓
true?
/ \
Ya Tidak
↓ ↓
Lanjut Game Over
Program ATM:
Apakah saldo cukup?
↓
true?
/ \
Ya Tidak
↓ ↓
Tarik Tolak
uang transaksi
Semua keputusan seperti ini membutuhkan Boolean.
30. Nanti Boolean akan bertemu operator
Misalnya:
val age = 20
val isAdult = age >= 18
Kotlin menghitung:
20 >= 18
Hasil:
true
Maka:
isAdult → true
Kemudian:
if (isAdult) {
println("Adult")
}
Nah, di sinilah kamu akan mulai melihat hubungan:
Variable
↓
Operator
↓
Boolean
↓
if
↓
Keputusan
Ini merupakan salah satu fondasi utama programming.
31. Koreksi penting dari subtitle
Ada beberapa hal yang perlu kamu catat supaya tidak terbawa kesalahan video.
❌ “Char tidak berhubungan dengan Unicode”
Tidak tepat.
Kotlin mendukung Unicode dan Char merepresentasikan karakter/unit kode yang sesuai dengan model karakter Kotlin/JVM.
Contoh:
val letter: Char = '\u0041'
❌ “Char sama seperti angka ASCII”
Jangan menganggap:
'A' = 65
sebagai aturan bahwa Char adalah Int.
Kotlin memiliki tipe Char tersendiri.
Jika memang ingin mendapatkan nilai numerik tertentu, gunakan operasi/konversi yang sesuai.
❌ “Char menggunakan double quotation”
Tidak.
'A' // Char
"Hello" // String
Ingat:
Char = single quote String = double quote
🧠 Kesimpulan
Materi ini memperkenalkan dua tipe data baru yang sangat penting.
Char
Untuk satu karakter:
val letter: Char = 'A'
Ciri-cirinya:
'A' → satu karakter
'7' → satu karakter
'#' → satu karakter
Gunakan single quotation.
Boolean
Untuk nilai logika:
val isActive: Boolean = true
Hanya ada:
true
false
Boolean sangat penting untuk:
ifelsewhen- loop
- validasi
- login
- permission
- status aplikasi
- pengambilan keputusan
🎯 Hafalkan tiga perbedaan ini
'A' → Char
"Hello" → String
123 → Int
true → Boolean
Dan kalau disederhanakan:
Charmenjawab “karakter apa?”Stringmenjawab “teks apa?”Intmenjawab “berapa angkanya?”Booleanmenjawab “benar atau salah?”
Kalau kamu sudah memahami empat pertanyaan tersebut, fondasi tipe data Kotlin kamu mulai terbentuk dengan sangat baik.