Conversión de tipos
Parte de la sección Fundamentos del Journey de Kotlin de Coddy. Lección 38 de 93.
Dado que readLine() devuelve una cadena que admite valores nulos (null al final de la entrada), tendrás que convertir esa entrada cuando quieras trabajar con números. Kotlin proporciona funciones de conversión para transformar cadenas en otros tipos.
Para convertir una cadena en un entero, usa toInt():
fun main() {
val input = readLine()!!
val number = input.toInt()
println(number + 10)
}Si el usuario introduce "5", el programa lo convierte en el entero 5, después suma 10 para obtener 15. Sin conversión, "5" + 10 concatena texto y produce "510". Convertir primero da como resultado una suma numérica.
Para los números decimales, usa toDouble():
fun main() {
val price = readLine()!!.toDouble()
println("With tax: ${price * 1.1}")
}Puedes encadenar la conversión directamente después de readLine()!! para obtener un código más limpio. Otras conversiones útiles incluyen toLong() para números enteros grandes y toBoolean() para valores booleanos.
Estas conversiones suponen que la entrada es válida. Si alguien introduce "hello" cuando esperas un número, el programa se bloqueará. Aprenderás a gestionar esos errores más adelante en el curso.
Desafío
FácilEscribe una función calculateFutureAge que reciba currentAge y yearsToAdd como cadenas y devuelva la edad futura como un entero.
Convierte ambos parámetros de cadena en enteros, súmalos y devuelve el resultado.
Parámetros:
currentAge(String): La edad actual como cadena (p. ej., "25")yearsToAdd(String): El número de años que se añadirán como cadena (p. ej., "10")
Devuelve: La suma de ambos valores como un entero (Int)
Pruébalo tú mismo
fun calculateFutureAge(currentAge: String, yearsToAdd: String): Int {
// Escribe el código aquí
}
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