Menu
Coddy logo textTech

Dividir y unir

Parte de la sección Lógica y flujo del Journey de Kotlin de Coddy. Lección 46 de 63.

trim elimina los espacios en blanco iniciales y finales. split separa el texto en partes mediante un delimitador, y joinToString combina las partes usando un separador elegido. Estas operaciones te permiten normalizar entradas simples delimitadas. Aquí, el delimitador es texto literal, no una expresión regular.

Dentro de main:

val parts = " red, blue ,green ".trim().split(",").map { it.trim() }
println(parts.joinToString(" | "))

La coma divide los campos, trim limpia cada campo y el separador final se inserta entre los campos.

Recorta los campos individuales después de dividirlos cuando deban eliminarse los espacios que los rodean.

challenge icon

Desafío

Intermedio

Completa cleanFields con el parámetro text: String. Divide el texto usando comas literales, elimina los espacios de cada campo y descarta los campos vacíos. Devuelve los campos restantes en el orden de entrada.

A menos que se indiquen límites más estrictos arriba, las colecciones contienen como máximo 100 elementos en cada nivel, y los argumentos enteros y los valores enteros de las colecciones están entre -1000 y 1000. El texto proporcionado para el análisis puede incluir representaciones no válidas o fuera de rango, como se describe.

Devuelve un valor de tipo List<String>. Conserva el código de entrada/salida proporcionado. Lee los argumentos escalares, uno por línea; una lista comienza con su cantidad, seguida de sus elementos, y un mapa comienza con la cantidad de sus entradas, seguida de cada clave y valor. Las listas anidadas repiten el formato de cantidad y elementos para cada fila. El main proporcionado imprime el valor devuelto seguido de un salto de línea. Las listas usan el formato estándar entre corchetes de Kotlin; no imprimas etiquetas adicionales.

Pruébalo tú mismo

fun cleanFields(text: String): List<String> {
    // Escribe tu solución aquí.
    return emptyList()
}
fun main() {
    val text = readLine().orEmpty()
    println(cleanFields(text))
}
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Lógica y flujo

Practica por tu cuenta: Playground de Kotlin