Scelta dell'opzione corretta
Scopra quando utilizzare ciascuna opzione
Scelta dell'opzione corretta è una lezione Kotlin Academy gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Kotlin Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Kotlin Academy include 4 lezioni in totale.
Scegliere una funzione di ambito
Con cinque funzioni di ambito disponibili, scegliere quella giusta dipende da due domande:
- Come viene referenziato l'oggetto:
thisoit? - Che cosa viene restituito: il risultato della lambda o l'oggetto?
La tabella decisionale
Ecco il quadro completo:
letutilizzaite restituisce il risultato della lambda.runutilizzathise restituisce il risultato della lambda.withutilizzathis(argomento) e restituisce il risultato della lambda.applyutilizzathise restituisce l'oggetto.alsoutilizzaite restituisce l'oggetto.
Utilizzare let per la sicurezza rispetto a null
Quando ha un valore nullable e desidera agire su di esso solo se presente, utilizzi let con una chiamata sicura.
fun main() {
val name: String? = "Ada"
name?.let { println("Hello $it") }
}Utilizzare run per this e un risultato
Quando desidera accedere ai membri con this e calcolare un risultato, utilizzi run.
fun main() {
val text = "scope"
val info = text.run { "$this has length $length" }
println(info)
}Utilizzare with per raggruppare
Quando ha un oggetto non null e desidera eseguire diverse operazioni su di esso, with risulta naturale.
fun main() {
val list = listOf(1, 2, 3)
with(list) {
println(sum())
println(size)
}
}Utilizzare apply per la configurazione
Quando crea un oggetto e deve impostare diverse proprietà, apply mantiene il codice pulito e restituisce l'oggetto.
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)
}Utilizzare also per gli effetti collaterali
Quando desidera registrare log, eseguire il debug o convalidare senza modificare l'oggetto, la scelta giusta è also con it.
fun main() {
val nums = listOf(1, 2, 3)
.also { println("Got ${it.size} items") }
println(nums.sum())
}Combinare le funzioni di ambito
Il codice reale spesso le concatena: configurare con apply, registrare i log con also, trasformare con 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)
}Evitare un uso eccessivo
Le funzioni di ambito possono compromettere la leggibilità se vengono annidate o usate troppo. Se una variabile semplice e un codice esplicito risultano più chiari, preferisca questa soluzione. Utilizzi le funzioni di ambito per eliminare ripetizioni reali, non per complicare il codice.
Il problema dell'annidamento
L'annidamento delle funzioni di ambito rende ambigui it e this. Se deve annidarle, rinomini il parametro per mantenere chiaro il codice.
fun main() {
val outer = "A"
outer.let { o ->
"B".let { i ->
println("$o then $i")
}
}
}Un modello mentale rapido
Ricordi: le funzioni che restituiscono l'oggetto (apply, also) costruiscono pipeline; le funzioni che restituiscono un risultato (let, run, with) trasformano i valori. Scelga it o this in base alla leggibilità.
Verifica rapida
Quale funzione di ambito dovrebbe utilizzare per configurare un oggetto appena creato e ottenere nuovamente quell'oggetto?
Riepilogo
Ora dispone di un criterio decisionale: scelga in base al riferimento (this o it) e al valore restituito (oggetto o risultato). let e run trasformano, with raggruppa, apply configura e also aggiunge effetti collaterali. Le utilizzi per ridurre il rumore, non per aumentarlo.
Impara Kotlin con un tutor IA — gratis
Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.
- Corsi
- 51
- Lezioni
- 203
Domande Frequenti
La lezione «Scelta dell'opzione corretta» è gratuita?
Sì — il testo completo di «Scelta dell'opzione corretta» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Kotlin Academy, passa a CoddyKit PRO. Il corso Kotlin Academy include 4 lezioni in totale.
Cosa imparerò in «Scelta dell'opzione corretta»?
Scopra quando utilizzare ciascuna opzione Eserciti Kotlin Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Kotlin Academy?
Non è richiesta alcuna esperienza precedente. Kotlin Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.
Quanto tempo richiede la lezione «Scelta dell'opzione corretta»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Kotlin Academy?
Sì. Ogni lezione Kotlin Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- let e run
- apply e also
- with
- Scelta dell'opzione corretta