Halo sobat koding…
Kali ini gw mau bahas yang berbau kotlin nih… , jika kalian menggunakan bahasa kotlin pasti kalian tidak akan asing dengan fungsi apply, with, run, let, also.
Jadi apa itu apply, with, run, let, also ? dan apa perbedaannya ? Tapi sebelum itu dibawah ini ada source code yang akan kita gunakan untuk contoh. xxx akan diubah sesuai function yg digunakan.
val str: String = "..."
val result = str.xxx{
println(this) // Receiver
println(it) // Argument
42 // Block return value
}
Apply : fungsi ini mengembalikan object yang menggunakan fungsi tersebut. Receiver (this) pada apply akan berisikan object tersebut. Dalam apply akan mem-block return value, apply tidak mempunyai argument. Berikut ouput jika menggunakan apply.
![]()
Run : fungsi ini mirip seperti with perbedaannya adalah run berupa extension dan with berupa normal function. Receiver (this) pada runakan berisikan object tersebut. Dan dalam run terdapat return value, run tidak mempunyai argument. Berikut output jika menggunakan run.
![]()
Let : fungsi ini dapat mengembalikan object yang berbeda dengan object yang menggunakan fungsi tersebut. Receiver (this) pada let akan berisikan instance Class tersebut. Argument(it) pada let akan berisikan object tersebut, dan dalam let terdapat return value. Berikut output jika menggunakan let.

Also: fungsi ini mengembalikan object yang menggunakan fungsi tersebut. Receiver (this) pada also akan berisikan instance Class tersebut. Argument(it) pada also akan berisikan object tersebut, dan dalam also mem-block return value. Berikut output jika menggunakan also.

With : fungsi ini dapat mengembalikan object yang berbeda dengan object yang menggunakan fungsi tersebut. Receiver (this) pada with akan berisikan object tersebut. Dan dalam with terdapat return value. Dalam with tidak mempunyai argument. Ada perbedaan pemakaian with, with berupa normal function. Berikut contoh pemakaiannya:
val str: String = "..."
val result = with(str){
println(this) // Receiver
println(it) // Argument
42 // Block return value
}
Nah dibawah ini output dari kode diatas

Berikut adalah ringkasan dari function–function yang gw jelasin sebelumnya.

Nah gw sudah jelasin dari masing-masing function. Semoga bermanfaat untuk sobat koding semua.
Sekian dari gw ya, see you










































