let et run
Opérer sur des objets
let et run est une leçon Kotlin Academy gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Kotlin Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Kotlin Academy comprend 4 leçons au total.
Que sont les fonctions de portée
Kotlin propose cinq fonctions de portée : let, run, with, apply et also. Elles vous permettent d'exécuter un bloc de code sur un objet à l'intérieur d'une portée temporaire.
- Vous faites référence à l'objet avec
itouthis. - Le bloc renvoie soit l'objet lui-même, soit le résultat de la lambda.
Dans cette leçon, nous nous concentrons sur let et run.
La fonction let
let exécute un bloc dans lequel l’objet est disponible sous le nom it et renvoie le résultat de la lambda.
Elle est idéale pour n’exécuter du code que lorsqu’une valeur n’est pas nulle et pour transformer une valeur en autre chose.
fun main() {
val name = "Alice"
val length = name.let {
println("Name is $it")
it.length
}
println("Length: $length")
}let avec des valeurs nullables
Le cas d’utilisation le plus courant de let est associé à l’opérateur d’appel sécurisé ?. Le bloc ne s’exécute que lorsque la valeur n’est pas nulle.
fun main() {
val name: String? = "Bob"
name?.let {
println("Hello, $it")
}
val empty: String? = null
empty?.let {
println("This never prints")
}
println("Done")
}Renommer it dans let
Dans let, vous pouvez remplacer it par un nom significatif en déclarant un paramètre de lambda.
fun main() {
val price = 100
price.let { amount ->
println("The amount is $amount")
}
}La fonction run
run exécute un bloc dans lequel l’objet est disponible sous le nom this et renvoie le résultat de la lambda.
Utilisez-la lorsque vous souhaitez accéder directement aux membres sans préfixe.
fun main() {
val text = "Kotlin"
val upper = text.run {
println("Length is $length")
uppercase()
}
println(upper)
}run sans récepteur
run peut aussi être appelée sans objet. Elle exécute simplement un bloc et renvoie son résultat. C’est utile pour regrouper des instructions et calculer une valeur.
fun main() {
val result = run {
val a = 5
val b = 10
a + b
}
println("Result: $result")
}it et this
La différence essentielle entre let et run réside dans la manière dont elles font référence à l’objet :
letutiliseit(un paramètre).runutilisethis(un récepteur, souvent implicite).
Toutes deux renvoient le résultat de la dernière expression du bloc.
fun main() {
val word = "hi"
val a = word.let { it.length }
val b = word.run { length }
println("$a $b")
}Chaîner avec let
Comme let renvoie le résultat de la lambda, vous pouvez enchaîner les appels et transformer une valeur étape par étape.
fun main() {
val number = 4
val output = number
.let { it * 2 }
.let { it + 1 }
println(output)
}run pour vérifier la nullité et effectuer des calculs
Comme let, run fonctionne avec les appels sécurisés. Elle combine la vérification de la nullité et l’accès aux membres dans un seul bloc.
fun main() {
val message: String? = "Welcome"
val length = message?.run {
println(this)
length
}
println("Length: $length")
}Renvoyer des types différents
Les deux fonctions peuvent renvoyer un type différent de celui de l’objet. Le type renvoyé correspond à la valeur évaluée par la dernière ligne.
fun main() {
val n = 10
val label: String = n.let { "Value is $it" }
println(label)
}Quand choisir let ou run
Utilisez let pour les opérations sécurisées vis-à-vis de la nullité et les transformations de valeurs lorsque it reste clair à la lecture.
Utilisez run lorsque vous souhaitez appeler plusieurs membres de l’objet et calculer un résultat, this fournissant un accès direct.
Vérification rapide
Testez votre compréhension de let et run.
Récapitulatif
Vous avez appris les deux fonctions de portée qui renvoient un résultat :
letexpose l’objet sous le nomitet renvoie le résultat de la lambda, ce qui est idéal pour les transformations sécurisées vis-à-vis de la nullité.runexpose l’objet sous le nomthiset renvoie le résultat de la lambda, ce qui est idéal pour regrouper les accès aux membres.
Vous allez ensuite configurer des objets avec apply et ajouter des effets secondaires avec also.
Apprends Kotlin avec un tuteur IA — gratuit
Écris et exécute du vrai code dans ton navigateur, obtiens de l'aide instantanée d'un tuteur IA disponible 24h/24, et reprends là où tu t'es arrêté sur le web ou dans l'app.
- Cours
- 51
- Leçons
- 203
Questions Fréquemment Posées
La leçon « let et run » est-elle gratuite ?
Oui — le texte complet de « let et run » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Kotlin Academy, passe à CoddyKit PRO. Le cours Kotlin Academy comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « let et run » ?
Opérer sur des objets Tu pratiques Kotlin Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Kotlin Academy ?
Aucune expérience préalable n'est requise. Kotlin Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.
Combien de temps prend la leçon « let et run » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Kotlin Academy ?
Oui. Chaque leçon Kotlin Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- let et run
- apply et also
- with
- Choisir le bon outil