Operator dan Simbol pada Kotlin

Muhammad Fajri
Sunday, 11 April 2021

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

  1. Modul Pemrograman Mobile (Mobile Programming).
  2. Hagos, Ted. 2018. Learn Android Studio 3 with Kotlin: Efficient Android App Development. Apress: Manila.