Operator dan Simbol pada Kotlin
Bismillahirrahmanirrahim.
Dalam mempelajari sebuah bahasa, kita juga perlu memahami operator dan simbol yang digunakan dalam sebuah program. Untuk menghitung nilai sebuah variabel misalnya untuk melakukan penjumlahan maka dibutuhkan operator yang sesuai. Begitu pun untuk hal yang lainnya misalnya ingin membandingkan sebuah nilai agar dapat dibuatkan kesimpulan berupa output program dari hasil perbandingan tersebut. Ini pun membutuhkan operator yang sesuai. Dan contoh-contoh yang lainnya.
Di bagian ini, kita akan membahas secara singkat operator yang ada dalam bahasa Kotlin.
Operator Aritmatika
Operator yang digunakan dalam operasi matematika.
Operator | Keterangan |
---|---|
+ |
Penjumlahan |
- |
Pengurangan |
* |
Perkalian |
/ |
Pembagian |
% |
Modulus atau sisa pembagian |
Simbol asterisk (*) juga digunakan untuk melewati array untuk menuju parameter vararg.
Contoh program menggunakan operator aritmatika.
fun main() {
val num1 = 7.5
val num2 = 4.5
var result: Double
result = num1 + num2
println("$num1 + $num2 = $result")
result = num1 - num2
println("$num1 - $num2 = $result")
result = num1 * num2
println("$num1 * $num2 = $result")
result = num1 / num2
println("$num1 / $num2 = $result")
result = num1 % num2
println("$num1 % $num2 = $result")
}
Output:
7.5 + 4.5 = 12.0
7.5 - 4.5 = 3.0
7.5 * 4.5 = 33.75
7.5 / 4.5 = 1.6666666666666667
7.5 % 4.5 = 3.0
Operator Augmented Assignments
Operator ini digunakan untuk memperpendek penulisan nilai jika dibandingkan dengan operator aritmatika.
Operator Matematika | Augmented Assignments |
---|---|
a = a + 10 | a += 10 |
a = a - 10 | a -= 10 |
a = a * 10 | a *= 10 |
a = a / 10 | a /= 10 |
a = a % 10 | a %= 10 |
Operator Perbandingan
Operator | Keterangan |
---|---|
> |
Lebih dari |
< |
Kurang dari |
>= |
Lebih dari sama dengan |
<= |
Kurang dari sama dengan |
Contoh program:
fun main() {
val a = 100
val b = 200
val result: Boolean = a > b
println(result)
}
Output:
false
Dari program tersebut, output yang dihasilkan adalah false
. Karena hasil perbandingan nilai variabel a
dan b
, dimana nilai a
yaitu 100
kurang dari nilai b
yaitu 200
dan operator yang digunakan yaitu >
(lebih dari).
Output ini dapat berubah jika posisi perbandingan nilai a
dan b
dibalik dengan operator yang tetap. Misalnya a
dipindahkan ke kanan dan b
dipindahkan ke kiri, maka output yang dihasilkan adalah true
.
Operator Persamaan
Operator | Keterangan |
---|---|
== |
Sama dengan |
!= |
Tidak sama dengan |
Contoh program:
fun main() {
var a = "Halo"
var b = "Halo"
if(a == b) { // mengevaluasi nilai true
println("$a sama dengan $b")
}
}
Output:
Halo sama dengan Halo
Output ini menunjukkan bahwa hasil evaluasi yang ada pada blok if()
memberikan nilai true
sehingga blok yang ada di dalamnya dieksekusi sebagai output program.
Di dalam Java, untuk membandingkan dua buah nilai, dibutuhkan sebuah fungsi yaitu .equals()
. Kita tidak dapat menggunakan operator kesamaan di atas.
Operator Index Access
Operator ini yaitu [ ]
dan [,]
. Digunakan untuk mengakses elemen dari list atau nilai dari map. Jika menggunakan cara dalam Java yaitu get(index)
atau get(key)
.
Contoh program:
fun main() {
val fruits = listOf("Apel", "Pisang", "Jeruk")
println(fruits.get(2))
println(fruits[2])
}
Output:
Pisang
Pisang
Kedua output di atas sama meskipun menggunakan cara yang berbeda. Method println()
pertama menggunakan .get()
(cara Java) untuk mengakses elemen. Sedangkan pada bagian kedua menggunakan operator index access yaitu [ ]
untuk mengambil nilai dalam list.
Operator and, or dan not
Operator | Keterangan |
---|---|
&& atau and |
Operator and |
|| atau or |
Operator or |
! atau not |
Operator not |
* Operator ini akan ditambahkan sedikit pembahasan di lain waktu.
Operator dan Simbol Lainnya
===
dan !===
digunakan untuk memeriksa persamaan referensi (obyek yang ditunjuk).
Contoh baris program:
var p1 = Person("John")
var p2 = Person("John")
if(p1 === p2) {
println("p1 == p2")
}
Evaluasi program di atas bernilai false
karena p1
dan p2
tidak menunjuk pada obyek yang sama.
Simbol =
(sama dengan) digunakan sebagai penugasan pernyataan (assignmen statement). Dalam java assignment merupakan statement sedangkan dalam Java merupakan expression.
Referensi
- Modul Pemrograman Mobile (Mobile Programming).
- Hagos, Ted. 2018. Learn Android Studio 3 with Kotlin: Efficient Android App Development. Apress: Manila.