Kotlin Academy · Pelajaran

Memilih yang tepat

Bila setiap satu digunakan

Pelajaran 4 daripada 413 langkah

Memilih yang tepat ialah pelajaran Kotlin Academy percuma di CoddyKit. Ini ialah pelajaran 4 daripada 4. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Kotlin Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Kotlin Academy merangkumi sejumlah 4 pelajaran.

Memilih Fungsi Skop

Dengan lima fungsi skop yang tersedia, pemilihan fungsi yang sesuai bergantung pada dua soalan:

  • Bagaimanakah objek dirujuk: this atau it?
  • Apakah yang dikembalikan: hasil lambda atau objek?

Jadual Keputusan

Berikut ialah gambaran lengkapnya:

  • let menggunakan it dan mengembalikan hasil lambda.
  • run menggunakan this dan mengembalikan hasil lambda.
  • with menggunakan this (hujah) dan mengembalikan hasil lambda.
  • apply menggunakan this dan mengembalikan objek.
  • also menggunakan it dan mengembalikan objek.

Gunakan let untuk Keselamatan Null

Apabila anda mempunyai nilai yang mungkin null dan mahu bertindak ke atasnya hanya jika nilai itu wujud, gunakan let bersama panggilan selamat.

fun main() {
    val name: String? = "Ada"
    name?.let { println("Hello $it") }
}

Gunakan run untuk this + Hasil

Apabila anda mahu mengakses ahli menggunakan this dan mengira hasil, gunakan run.

fun main() {
    val text = "scope"
    val info = text.run { "$this has length $length" }
    println(info)
}

Gunakan with untuk Pengelompokan

Apabila anda mempunyai objek bukan null dan mahu melaksanakan beberapa operasi padanya, with ialah pilihan yang semula jadi.

fun main() {
    val list = listOf(1, 2, 3)
    with(list) {
        println(sum())
        println(size)
    }
}

Gunakan apply untuk Konfigurasi

Apabila anda mencipta objek dan perlu menetapkan beberapa sifat, apply memastikan kod kekal kemas dan mengembalikan objek tersebut.

data class Server(var host: String = "", var port: Int = 0)

fun main() {
    val server = Server().apply {
        host = "0.0.0.0"
        port = 80
    }
    println(server)
}

Gunakan also untuk Kesan Sampingan

Apabila anda mahu mencatat log, menyahpepijat atau mengesahkan tanpa mengubah objek, also bersama it ialah pilihan yang sesuai.

fun main() {
    val nums = listOf(1, 2, 3)
        .also { println("Got ${it.size} items") }
    println(nums.sum())
}

Menggabungkan Fungsi Skop

Kod sebenar sering merantainya: konfigurasi dengan apply, catat log dengan also dan tukar dengan let.

data class User(var name: String = "", var score: Int = 0)

fun main() {
    val label = User()
        .apply { name = "Max"; score = 90 }
        .also { println("Created $it") }
        .let { "${it.name}: ${it.score}" }
    println(label)
}

Mengelakkan Penggunaan Berlebihan

Fungsi skop boleh menjejaskan kebolehbacaan jika disarang atau digunakan secara berlebihan. Jika pemboleh ubah biasa dan kod yang jelas lebih mudah difahami, utamakan pendekatan itu. Gunakan fungsi skop untuk menghapuskan pengulangan sebenar, bukan sekadar untuk kelihatan bijak.

Perangkap Penyusunan Bersarang

Penyusunan fungsi skop secara bersarang menjadikan it dan this kabur. Jika anda perlu menyarangnya, namakan semula parameter supaya semuanya kekal jelas.

fun main() {
    val outer = "A"
    outer.let { o ->
        "B".let { i ->
            println("$o then $i")
        }
    }
}

Model Mental Ringkas

Ingat: fungsi yang mengembalikan objek (apply, also) membina saluran; fungsi yang mengembalikan hasil (let, run, with) menukar nilai. Pilih it atau this berdasarkan kebolehbacaan.

Semakan Ringkas

Fungsi skop manakah yang patut anda gunakan untuk mengkonfigurasi objek yang baru dicipta dan mendapatkan objek itu semula?

Ringkasan

Kini anda mempunyai rangka kerja untuk membuat keputusan: pilih berdasarkan rujukan (this berbanding it) dan nilai pulangan (objek berbanding hasil). let dan run menukar nilai, with mengumpulkan operasi, apply mengkonfigurasi objek dan also menambah kesan sampingan. Gunakannya untuk mengurangkan gangguan, bukan menambahnya.

Percuma untuk bermula

Pelajari Kotlin dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
51
Pelajaran
203

Soalan Lazim

Adakah pelajaran “Memilih yang tepat” percuma?

Ya — sebanyak 3 pelajaran dalam laluan pembelajaran Kotlin Academy, termasuk “Memilih yang tepat”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus Kotlin Academy merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Memilih yang tepat”?

Bila setiap satu digunakan Anda berlatih Kotlin Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan Kotlin Academy?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Kotlin Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 4 daripada 4.

Berapa lamakah pelajaran “Memilih yang tepat” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran Kotlin Academy ini?

Ya. Setiap pelajaran Kotlin Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. let dan run
  2. apply dan also
  3. with
  4. Memilih yang tepat
← Kembali ke Kotlin Academy