Infix merupakan notasi antara operand dan operator (+, -, *, /) dimana operator berada di antara dua operand. Bentuk Infix pada matematika :
2 + 3 = 5
5 + 5 = 10
Misalkan pada 2 + 3, 2 dan 3 merupakan operand dan + merupakan operator.
Bentuk Infix diatas bisa diterapkan kedalam kotlin, jadinya
fun Int.kurangi(newValue: Int): Int {
return this - newValue
}
infix fun Int.tambah(newValue: Int): Int {
return this + newValue
}
fun main() {
val hasil = 10.kurangi(4)
val hasil2 = 5 tambah 5
val hasil3 = 5.tambah(5)
}
Penjelasan kode
Ada dua function yang ditambahkan pada tipe data Int yaitu kurangi
dan tambah
maka setiap tipe data Int bisa menggunakan kedua fungsi tersebut. Misalkan pada variabel hasil
karena 10 itu adalah tipe data Int maka bisa langsung di eksekusi fungsinya jadi 10.kurangi(4)
Penulisannya bisa dipersingkat menggunakan keyword Infix
sebelum keyword fun
. Misalkan pada method tambah
, karena method ini adalah sebuah Infix maka pemanggilannya bisa dipersingkat menjadi 5 tambah 5
(notasi infix)
Class Infix Method
Kode di atas merupakan contoh Infix pada sebuah class Int. Kotlin juga support Infix pada method di sebuah class. Misalkan :
class Angka(var angka: Int) {
infix fun tambah(nilai: Int): Int {
return angka + nilai
}
}
fun main() {
val hasil = Angka(10)
println(hasil tambah 10)
}
Syarat Infix
- Bisa bertipe data apa saja termasuk String atau Double
- Harus memiliki satu parameter
Top comments (0)