Inferencia de tipos
Parte de la sección Fundamentos del Journey de Kotlin de Coddy. Lección 6 de 93.
Kotlin puede determinar automáticamente el tipo de un valor. Esto se denomina inferencia de tipos:
fun main() {
val name = "Alice" // Kotlin infiere que esto es un String
val age = 25 // Kotlin infiere que esto es un Int
val price = 9.99 // Kotlin infiere que esto es un Double
}Pero también puedes declarar explícitamente el tipo mediante una anotación de tipo. Escribes dos puntos después del nombre, seguidos del tipo:
fun main() {
val name: String = "Alice"
val age: Int = 25
val price: Double = 9.99
val isActive: Boolean = true
}Las anotaciones de tipo son útiles cuando:
- Quieres ser muy claro sobre qué tipo tiene un valor
- Declaras una variable sin un valor inicial
fun main() {
var score: Int // Declarada pero aún no asignada
score = 100 // Asignada más tarde
}Sin la anotación de tipo, Kotlin no sabría qué tipo debería tener score.
Desafío
PrincipianteCrea cuatro declaraciones val sin anotaciones de tipo explícitas: city que contenga "Oslo", platform que contenga 4, fare que contenga 12.5 y isExpress que contenga false. Deja que Kotlin infiera sus tipos. Imprime sus valores en cuatro líneas separadas, en ese orden.
Pruébalo tú mismo
fun main() {
// Declara los cuatro valores sin anotaciones de tipo.
// Imprímelos en el orden solicitado.
}
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Fundamentos
4Operadores, parte 1
Operadores aritméticosOperador móduloAsignación aumentadaOperadores de comparaciónRepaso: matemáticas simples7Entrada y salida básicas
Función PrintlnPlantillas de cadenasEntrada con ReadLineConversión de tiposRepaso - Años hasta la jubilaciónRepaso - Verdadero o falso10Funciones
Declarar una funciónParámetros y argumentosValores de retornoArgumentos con nombreValores predeterminadosFunciones de una sola expresiónRepaso - Función SigmaRepaso - Función de validación2Variables
Val frente a VarInferencia de tiposNúmerosCadenaBooleanoConvenciones de nomenclaturaRepaso: inicializar variables5Operadores Parte 2
Operadores lógicos Parte 1Operadores lógicos Parte 2Operadores lógicos Parte 3Ternario con expresión ifRepaso: lógica simple8Calculadora para dividir la cuenta
Mensaje de bienvenidaObtención de datos11FizzBuzz con un giro
Descripción general del juegoLa función FizzBuzz3Nullabilidad
Qué es la seguridad frente a valores nulosTipos anulablesOperador de llamada seguraOperador ElvisConceptos básicos de retos de funcionesAfirmación de no nulidadRepaso: acceso seguro6Toma de decisiones
Sentencia ifIf - ElseIf como expresiónExpresión whenWhen con rangosRepaso - Calculadora simple9Bucles
Bucle ForBucle WhileBucle Do-WhileBreakContinueRangos en buclesBucle anidadoRepaso - FactorialRepaso - Entrada dinámicaPractica por tu cuenta: Playground de Kotlin