Menu
Coddy logo textTech

Construir texto de forma eficiente

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

StringBuilder acumula texto con llamadas a append; después, toString produce la String final. Puedes añadir etiquetas, números y separadores dentro de un bucle sin tener que reconstruir manualmente una String inmutable en cada paso. Decide exactamente dónde deben ir los separadores.

Dentro de main:

val result = StringBuilder()
for (n in 1..3) {
    if (n > 1) result.append("-")
    result.append(n)
}
println(result.toString())

El separador se añade antes de cada elemento excepto el primero, evitando un guion final.

Usa StringBuilder.append para el texto incremental y toString para el String final.

challenge icon

Desafío

Intermedio

Completa numberLine con parámetros count: Int. Usa StringBuilder para devolver los números del 1 al count separados por un solo guion, sin guion inicial ni final. count está entre 0 y 20; cero devuelve una cadena vacía.

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, tal como se describe.

Devuelve un valor de tipo 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 su cantidad de 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 numberLine(count: Int): String {
    // Escribe tu solución aquí.
    return ""
}
fun main() {
    val count = readln().toInt()
    println(numberLine(count))
}
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