Inférence de type
Fait partie de la section Fondamentaux du Journey Kotlin de Coddy. Leçon 6 sur 93.
Kotlin peut déterminer automatiquement le type d’une valeur. Cela s’appelle l’inférence de type :
fun main() {
val name = "Alice" // Kotlin infère que c'est un String
val age = 25 // Kotlin infère que c'est un Int
val price = 9.99 // Kotlin infère que c'est un Double
}Mais vous pouvez également déclarer explicitement le type à l’aide d’une annotation de type. Vous écrivez deux-points après le nom, suivis du type :
fun main() {
val name: String = "Alice"
val age: Int = 25
val price: Double = 9.99
val isActive: Boolean = true
}Les annotations de type sont utiles lorsque :
- Vous voulez être particulièrement clair sur le type d’une valeur
- Vous déclarez une variable sans valeur initiale
fun main() {
var score: Int // Déclaré mais pas encore assigné
score = 100 // Assigné plus tard
}Sans l’annotation de type, Kotlin ne saurait pas quel type devrait avoir score.
Défi
DébutantCrée quatre déclarations val sans annotations de type explicites : city contenant "Oslo", platform contenant 4, fare contenant 12.5 et isExpress contenant false. Laisse Kotlin en déduire les types. Affiche leurs valeurs sur quatre lignes distinctes, dans cet ordre.
Essayez vous-même
fun main() {
// Déclarez les quatre valeurs sans annotations de type.
// Affichez-les dans l'ordre demandé.
}
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