Menu
Coddy logo textTech

O Método Contains

Parte da seção Fundamentos do Journey de Kotlin da Coddy. Lição 82 de 93.

Uma tarefa comum ao trabalhar com listas é verificar se um elemento específico existe na coleção. O Kotlin fornece o método contains() para essa finalidade, que retorna true se o elemento for encontrado e false caso contrário.

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

Kotlin também oferece uma alternativa mais legível usando o operador in, que faz exatamente a mesma coisa:

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

Você também pode verificar se um elemento não está em uma lista usando !in:

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

Essas verificações também funcionam com strings, permitindo que você verifique se um caractere ou uma substring existe:

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

O operador in é particularmente útil em instruções condicionais, tornando seu código mais expressivo e fácil de ler do que iterar manualmente por uma lista para encontrar um elemento.

challenge icon

Desafio

Médio

Você receberá uma lista de nomes de usuário permitidos e um nome de usuário para verificar. Determine se o nome de usuário existe na lista de permitidos usando o operador in.

Se o nome de usuário estiver na lista, imprima Access granted. Se o nome de usuário não estiver na lista, imprima Access denied.

Formato de entrada:

  • Primeira linha: um inteiro n representando o número de nomes de usuário permitidos
  • Próximas n linhas: strings representando os nomes de usuário permitidos
  • Última linha: o nome de usuário a ser verificado

Formato de saída:

Imprima Access granted ou Access denied com base no fato de o nome de usuário existir ou não na lista de permitidos.

Exemplo:

Se a lista de permitidos for ["alice", "bob", "charlie"] e o nome de usuário a ser verificado for bob, a saída deverá ser:

Access granted

Se o nome de usuário a ser verificado for david, a saída deverá ser:

Access denied

Experimente você mesmo

fun main() {
    // Leia o número de nomes de usuário permitidos
    val n = readLine()!!.toInt()
    
    // Leia os nomes de usuário permitidos em uma lista
    val allowedUsernames = mutableListOf<String>()
    for (i in 1..n) {
        allowedUsernames.add(readLine()!!)
    }
    
    // Leia o nome de usuário a verificar
    val usernameToCheck = readLine()!!
    
    // TODO: Escreva seu código abaixo
    // Use o operador 'in' para verificar se usernameToCheck existe em allowedUsernames
    // Print "Access granted" if found, "Access denied" if not
    
}
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentos

Pratique por conta própria: Playground de Kotlin