Repaso: acceso seguro
Parte de la sección Fundamentos del Journey de Kotlin de Coddy. Lección 18 de 93.
Desafío
FácilEscribe una función safeWordInfo que reciba word1 y word2 y devuelva una cadena con formato que contenga información sobre ambas palabras.
La función recibe dos cadenas que pueden representar palabras reales o la cadena literal "null" para indicar un valor faltante. Debes tratarlas como valores anulables y usar operadores de acceso seguro para construir el resultado.
Lógica:
- Trata cualquier entrada igual a
"null"como un valor nulo - Para cada palabra, obtén su longitud mediante una llamada segura. Si es nula, usa
0como longitud predeterminada - Para cada palabra, obtén su versión en mayúsculas mediante una llamada segura. Si es nula, usa
"N/A"como valor predeterminado
Parámetros:
word1(String): Primera palabra, o"null"si faltaword2(String): Segunda palabra, o"null"si falta
Devuelve: Una cadena con el formato: Word1: [UPPERCASE] ([length]) | Word2: [UPPERCASE] ([length])
Ejemplo: Para las entradas "hello" y "null", devuelve "Word1: HELLO (5) | Word2: N/A (0)"
Las dos líneas de conversión del código inicial se te proporcionan. Mantenlas sin cambios; aprenderás su sintaxis condicional más adelante. Tu trabajo comienza con los valores anulables w1 y w2.
Pruébalo tú mismo
fun safeWordInfo(word1: String, word2: String): String {
// Conversión proporcionada: deja estas dos líneas sin cambios.
val w1: String? = if (word1 == "null") null else word1
val w2: String? = if (word2 == "null") null else word2
// Usa llamadas seguras y valores de respaldo para construir y devolver el resultado.
TODO("Complete the safe access operations")
}
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