When avec des plages
Fait partie de la section Fondamentaux du Journey Kotlin de Coddy. Leçon 33 sur 93.
Parfois, vous devez vérifier si une valeur se situe dans une plage plutôt que de correspondre à des valeurs spécifiques. L’expression when prend cela en charge à l’aide du mot-clé in combiné à des plages.
fun main() {
val score = 85
val grade = when (score) {
in 90..100 -> "A"
in 80..89 -> "B"
in 70..79 -> "C"
in 60..69 -> "D"
else -> "F"
}
println(grade) // Affiche : B
}Le mot-clé in vérifie si la valeur existe dans la plage spécifiée. Ici, 85 se situe dans 80..89, donc la note est « B ». C’est beaucoup plus propre que d’écrire score >= 80 && score <= 89 pour chaque condition.
Vous pouvez également combiner des plages avec des valeurs spécifiques dans la même expression when :
fun main() {
val age = 17
val category = when (age) {
0 -> "Newborn"
in 1..12 -> "Child"
in 13..19 -> "Teenager"
else -> "Adult"
}
println(category) // Affiche : Teenager
}Les plages rendent votre code plus lisible lorsque vous traitez des conditions numériques continues, ce qui est courant dans les systèmes de notation, les catégories d’âge et les scénarios similaires.
Défi
FacileÉcrivez une fonction getTicketPrice qui prend age et renvoie le prix du billet selon la catégorie d’âge de la personne.
Utilisez une expression when avec des plages pour déterminer le prix du billet approprié.
Conditions :
- Âge de
0à3ans : renvoyer0(gratuit) - Âge de
4à12ans : renvoyer10(tarif enfant) - Âge de
13à17ans : renvoyer15(tarif adolescent) - Âge de
18à64ans : renvoyer25(tarif adulte) - Âge de
65ans et plus : renvoyer12(tarif senior)
Paramètres :
age(Int) : l’âge de la personne
Valeur renvoyée : le prix du billet sous forme d’entier (Int)
Essayez vous-même
fun getTicketPrice(age: Int): Int {
// Écrivez le code ici
}
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