Menu
Coddy logo textTech

El método Contains

Parte de la sección Fundamentos del Journey de Kotlin de Coddy. Lección 82 de 93.

Una tarea común al trabajar con listas es comprobar si existe un elemento específico en la colección. Kotlin proporciona el método contains() para este propósito, que devuelve true si se encuentra el elemento y false en caso contrario.

val fruits = listOf("Apple", "Banana", "Orange")
println(fruits.contains("Banana"))  // true
println(fruits.contains("Grape"))   // false

Kotlin también ofrece una alternativa más legible usando el operador in, que hace exactamente lo mismo:

val numbers = listOf(1, 2, 3, 4, 5)
println(3 in numbers)   // true
println(10 in numbers)  // false

También puedes comprobar si un elemento no está en una lista usando !in:

val colors = listOf("Red", "Green", "Blue")
if ("Yellow" !in colors) {
    println("Yellow is not available")
}

Estas comprobaciones también funcionan con cadenas, lo que te permite verificar si existe un carácter o una subcadena:

val word = "Kotlin"
println('K' in word)      // true
println("otl" in word)    // true

El operador in es especialmente útil en las instrucciones condicionales, ya que hace que tu código sea más expresivo y fácil de leer que iterar manualmente por una lista para encontrar un elemento.

challenge icon

Desafío

Intermedio

Recibirás una lista de nombres de usuario permitidos y un nombre de usuario que debes comprobar. Determina si el nombre de usuario existe en la lista de permitidos utilizando el operador in.

Si el nombre de usuario está en la lista, imprime Access granted. Si el nombre de usuario no está en la lista, imprime Access denied.

Formato de entrada:

  • Primera línea: un entero n que representa el número de nombres de usuario permitidos
  • Siguientes n líneas: cadenas que representan los nombres de usuario permitidos
  • Última línea: el nombre de usuario que se debe comprobar

Formato de salida:

Imprime Access granted o Access denied según si el nombre de usuario existe en la lista de permitidos.

Ejemplo:

Si la lista de permitidos es ["alice", "bob", "charlie"] y el nombre de usuario que se debe comprobar es bob, la salida debería ser:

Access granted

Si el nombre de usuario que se debe comprobar es david, la salida debería ser:

Access denied

Pruébalo tú mismo

fun main() {
    // Lee el número de nombres de usuario permitidos
    val n = readLine()!!.toInt()
    
    // Lee los nombres de usuario permitidos en una lista
    val allowedUsernames = mutableListOf<String>()
    for (i in 1..n) {
        allowedUsernames.add(readLine()!!)
    }
    
    // Lee el nombre de usuario a verificar
    val usernameToCheck = readLine()!!
    
    // TODO: Escribe tu código debajo
    // Usa el operador 'in' para comprobar si usernameToCheck existe en allowedUsernames
    // Print "Access granted" if found, "Access denied" if not
    
}
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 Fundamentos

Practica por tu cuenta: Playground de Kotlin