Mapas y conjuntos
Colecciones de clave-valor y de valores únicos
Mapas y conjuntos es una lección gratuita de Android Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Android Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Android Academy incluye 4 lecciones en total.
Mapas y conjuntos
Un mapa almacena pares de clave y valor: cada clave única apunta a un valor, como en un diccionario.
Un conjunto almacena elementos únicos, sin duplicados y sin un orden garantizado.
Ambos son tipos de colecciones distintos de las listas y resultan útiles cuando necesita búsquedas o unicidad.
Crear un mapa
Use mapOf() con pares key to value para crear un mapa de solo lectura.
Las claves deben ser únicas. Aquí asociamos nombres de frutas con precios.
fun main() {
val prices = mapOf("apple" to 3, "banana" to 2)
println(prices)
println("Size: ${prices.size}")
}Buscar valores
Lea un valor usando corchetes y una clave. Si falta la clave, obtendrá null.
Use el operador Elvis ?: para proporcionar un valor predeterminado cuando falte una clave.
fun main() {
val prices = mapOf("apple" to 3, "banana" to 2)
println(prices["apple"])
println(prices["cherry"] ?: "not found")
}Recorrer un mapa
Un bucle for sobre un mapa le proporciona cada entrada. Puede desestructurarla en key y value.
Esta es la forma habitual de procesar cada par.
fun main() {
val ages = mapOf("Ada" to 36, "Bob" to 24)
for ((name, age) in ages) {
println("$name is $age")
}
}Mapas mutables
Use mutableMapOf() cuando necesite añadir o cambiar entradas.
Asignar un valor a una clave nueva la inserta; asignarlo a una clave existente reemplaza su valor.
fun main() {
val stock = mutableMapOf("pens" to 5)
stock["books"] = 10
stock["pens"] = 8
println(stock)
}Quitar elementos de un mapa
Llame a remove() con una clave para eliminar esa entrada de un mapa mutable.
Use containsKey() para comprobar si existe una clave antes de depender de ella.
fun main() {
val m = mutableMapOf("a" to 1, "b" to 2)
m.remove("a")
println(m.containsKey("a"))
println(m)
}Claves y valores
Todo mapa expone las colecciones keys y values.
Úselas cuando solo le interese uno de los lados de los pares.
fun main() {
val prices = mapOf("apple" to 3, "banana" to 2)
println(prices.keys)
println(prices.values)
}Crear un conjunto
Use setOf() para crear un conjunto de solo lectura. Los valores duplicados se eliminan automáticamente.
Esto hace que los conjuntos sean ideales para recopilar elementos únicos.
fun main() {
val tags = setOf("kotlin", "android", "kotlin")
println(tags)
println("Size: ${tags.size}")
}Comprobaciones de pertenencia
Los conjuntos destacan por sus comprobaciones rápidas de pertenencia. Use in o contains() para comprobar si un valor está presente.
Comprobar un conjunto suele ser más rápido que recorrer una lista.
fun main() {
val allowed = setOf("admin", "editor")
println("admin" in allowed)
println(allowed.contains("guest"))
}Conjuntos mutables y eliminación de duplicados
Use mutableSetOf() para crear un conjunto progresivamente. Añadir un valor que ya existe no produce ningún efecto.
Un truco rápido: llame a toSet() sobre una lista para eliminar los duplicados.
fun main() {
val nums = listOf(1, 2, 2, 3, 3, 3)
val unique = nums.toSet()
println(unique)
}Mapa frente a conjunto
Elija un mapa cuando necesite asociar claves con valores, como un nombre de usuario con un perfil.
Elija un conjunto cuando solo le importe si algo existe y no se permitan duplicados.
Comprobación rápida
Compruebe su comprensión de los mapas y los conjuntos.
Recapitulación
Los mapas almacenan pares clave-valor con mapOf() / mutableMapOf(); permiten buscar por clave y gestionar las claves ausentes con ?:.
Los conjuntos almacenan elementos únicos con setOf() / mutableSetOf() y ofrecen comprobaciones rápidas de pertenencia.
Preguntas frecuentes
¿La lección «Mapas y conjuntos» es gratis?
Sí — el texto completo de «Mapas y conjuntos» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Android Academy, actualiza a CoddyKit PRO. El curso de Android Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Mapas y conjuntos»?
Colecciones de clave-valor y de valores únicos Practicas Android Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Android Academy?
No se requiere experiencia previa. Android Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.
¿Cuánto tiempo toma la lección «Mapas y conjuntos»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Android Academy?
Sí. Cada lección de Android Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.