[Kotlin] Day 3: Array

day3


/**
* TODO: Belajar Array
* * Teryata banyak hal yng menarik tentang
* * Array di Kotlin
* * dan yang lain… 🙂
*/
fun main(args: Array) {
// * Array ternyata bisa berisi macam macam tipe
var _array = arrayOf(1 , 2 , 3.14 , 'A', "item" , "a b c d", 4)
// ! Wow Ternyata ada perbedaan
println("$_array[3]") // [Ljava.lang.Object;@1b6d3586[3]
println("${_array[3]}") // A
println(_array[3]) // A
//println( _array[3] + " adalah index ke 3") // ! ERROR
println( "" + _array[3] + " adalah index ke 3") // A adalah index ke 3
/**
* * Akhirnya saya tanya ke Stackoverflow (Thanks ya)
* * https://stackoverflow.com/questions/51686791/ask-about-different-println-in-kotlin
*
* TODO: println("$_array[3]")
* * itu mencetak object reference _array , setelah itu output "[3]"
* * Mirip ini : println(_array.toString() + "[3]")
*
* TODO: println("${_array[3]}")
* * Ini baru mencetak . Lebih aman pakai { }
*
* TODO: println( _array[3] + " adalah index ke 3")
* * Membutuhkan .toString() karena tanda '+' nya
* * membingungkan (apakah maksudnya menambah ataukah menggabungkan String)
*
* TODO: println( "" + _array[3] + " adalah index ke 3")
* * Karna di tengah, si compiler menjadi yakin kalau tanda '+' nya
* * berarti menggabungkan String
*/
// TODO: Mengetahui index
// * Nggak perlu pakai perulangan
println(_array.indexOf("item")) // 4
// TODO: Array juga bisa pakai rumus
// * Yang ini beneran keren
// ! Pakai Array , bukan arrayOf
var luasPersegi = Array(10, {x -> x * x})
println(luasPersegi[4]) // 16
// TODO: Kita coba yang lebih keren lagi
var luasLingkaran = Array(10, {x -> if(x % 7 == 0) x * x * 22 / 7; else x * x * 3.14 })
println(luasLingkaran[7]) // 154
println(luasLingkaran[8]) // 200.96
// * Sangat menghemat kode kan?
}

view raw

kotlin_day_3.kt

hosted with ❤ by GitHub

Diskusi Yuk...!

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout /  Ubah )

Foto Google

You are commenting using your Google account. Logout /  Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout /  Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout /  Ubah )

Connecting to %s