Saltar a contenido

Funciones y colecciones

Definición de funciones

En Kotlin, una función es un bloque de código reutilizable que puede recibir parámetros y devolver un valor.

Sintaxis básica

fun nombreFuncion(param1: Tipo, param2: Tipo): TipoDeRetorno {
    // instrucciones
    return resultado
}
  • fun: palabra clave para declarar funciones.
  • parámetros: van entre paréntesis, con su tipo.
  • tipo de retorno: después de los : (se omite si devuelve Unit, equivalente a void en Java).

Ejemplo

fun saludar(nombre: String): String {
    return "Hola, $nombre!"
}

fun main() {
    println(saludar("Kotlin"))
}

Funciones con valores por defecto

fun sumar(a: Int, b: Int = 10): Int {
    return a + b
}

fun main() {
    println(sumar(5))      // usa el valor por defecto b=10
    println(sumar(5, 3))   // sobrescribe el valor de b
}

Funciones de una sola expresión

fun cuadrado(x: Int) = x * x

Manejo de Arrays y Colecciones

Kotlin ofrece estructuras para almacenar y manipular grupos de datos.

Arrays

Un Array es una estructura de tamaño fijo con elementos del mismo tipo.

fun main() {
    val numeros = arrayOf(1, 2, 3, 4, 5)

    println(numeros[0])    // acceder al primer elemento
    numeros[1] = 10        // modificar el segundo

    for (n in numeros) {
        println(n)
    }
}

Listas

  • listOf() → lista inmutable.
  • mutableListOf() → lista mutable.
val lista = listOf("A", "B", "C")
val listaMutable = mutableListOf("X", "Y", "Z")

println(lista[0])         // A
listaMutable.add("W")     // se puede modificar

Conjuntos (Set)

Almacenan elementos únicos (sin duplicados).

val conjunto = setOf(1, 2, 2, 3)     // {1, 2, 3}
val conjuntoMutable = mutableSetOf(4, 5, 6)
conjuntoMutable.add(7)

Mapas (Map)

Almacenan pares clave-valor.

val mapa = mapOf(1 to "Uno", 2 to "Dos")
val mapaMutable = mutableMapOf("A" to 1, "B" to 2)

println(mapa[1])           // Uno
mapaMutable["C"] = 3