If comme expression
Fait partie de la section Fondamentaux du Journey Kotlin de Coddy. Leçon 31 sur 93.
Vous avez vu comment if peut être utilisé en ligne pour choisir entre deux valeurs. Mais lorsque vos blocs if-else contiennent plusieurs instructions, vous pouvez toujours utiliser toute la structure comme une expression : la dernière expression de chaque branche devient la valeur renvoyée.
fun main() {
val score = 85
val message = if (score >= 60) {
val grade = "passing"
"You got a $grade score!"
} else {
val grade = "failing"
"You got a $grade score."
}
println(message) // Affiche : You got a passing score!
}Chaque branche peut contenir plusieurs instructions, mais c’est la dernière expression de la branche qui est renvoyée et affectée à la variable. Dans ce cas, la chaîne de caractères de la dernière ligne de chaque bloc devient la valeur de message.
Cela fonctionne également avec les chaînes else if :
fun main() {
val temperature = 25
val description = if (temperature > 30) {
"Hot"
} else if (temperature > 20) {
"Warm"
} else {
"Cool"
}
println(description) // Affiche : Warm
}Lorsque vous utilisez if comme expression, la branche else est obligatoire : Kotlin doit garantir qu’une valeur est renvoyée, quelle que soit la condition qui est vraie.
Défi
FacileLa variable suivante vous est fournie :
val hours = 45Utilisez une expression if avec plusieurs instructions dans chaque branche afin de déterminer le statut de rémunération d’un travailleur et de créer un message.
Créez une variable payStatus à l’aide d’une expression if :
- Si
hoursest supérieur à 40 :- Créez une variable
overtimeégale àhours - 40 - La dernière expression doit être
"Overtime: $overtime extra hours"
- Créez une variable
- Sinon :
- Créez une variable
remainingégale à40 - hours - La dernière expression doit être
"Regular: $remaining hours until overtime"
- Créez une variable
Affichez la valeur de payStatus.
Essayez vous-même
fun main() {
val hours = 45
// TODO: Écrivez votre code ci-dessous
// Créez une variable payStatus en utilisant une expression if
// Si hours > 40 : créez la variable overtime et retournez "Overtime: $overtime extra hours"
// Sinon : créez la variable remaining et retournez "Regular: $remaining hours until overtime"
}Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Fondamentaux
4Opérateurs, partie 1
Opérateurs arithmétiquesOpérateur moduloAffectation augmentéeOpérateurs de comparaisonRécapitulatif - Mathématiques simples7E/S de base
Fonction PrintlnModèles de chaînesEntrée ReadLineConversion de typeRécapitulatif - Années avant la retraiteRécapitulatif - Vrai ou faux10Fonctions
Déclarer une fonctionParamètres et argumentsValeurs de retourArguments nommésValeurs par défautFonctions à expression uniqueRécapitulatif - Fonction SigmaRécapitulatif - Fonction de validation2Variables
Val ou VarInférence de typeNombresChaîne de caractèresBooléenConventions de nommageRécapitulatif - Initialiser des variables5Opérateurs, partie 2
Opérateurs logiques, partie 1Opérateurs logiques, partie 2Opérateurs logiques, partie 3Ternaire avec une expression ifRécapitulatif - Logique simple8Calculateur de partage d’addition
Message de bienvenueSaisie des données11FizzBuzz avec une variante
Aperçu du jeuLa fonction FizzBuzz3Nullabilité
Qu’est-ce que la sécurité vis-à-vis de nullTypes nullableOpérateur d’appel sécuriséOpérateur ElvisBases des défis de fonctionsAssertion de non-nullitéRécapitulatif - Accès sécurisé6Prise de décision
Instruction IfIf - ElseIf comme expressionExpression WhenWhen avec des plagesRécapitulatif - Calculatrice simple9Boucles
Boucle ForBoucle WhileBoucle Do-WhileBreakContinuePlages dans les bouclesBoucle imbriquéeRécapitulatif - FactorielleRécapitulatif - Entrée dynamiqueEntraînez-vous par vous-même : Playground Kotlin