Menu
Coddy logo textTech

Rechercher dans le catalogue

Fait partie de la section Programmation orientée objet du Journey Kotlin de Coddy. Leçon 53 sur 57.

challenge icon

Défi

Facile

Ajoutez la commande SEARCH. Votre code de l’étape précédente se trouve déjà dans Library.kt ; veillez à ce que chaque commande fonctionne exactement comme auparavant.

  • SEARCH <text> : le texte peut contenir des espaces. Répondez par une ligne pour chaque livre dont le titre contient le texte, sans tenir compte de la casse, dans l’ordre des identifiants de livre : Dune (available) ou Emma (borrowed by ada). S’il n’y a aucun résultat, répondez no matches.

Le code fourni transmet chaque ligne d’entrée à library.handle(line) et affiche chaque réponse renvoyée sur sa propre ligne. Les noms des membres sont des mots uniques en minuscules, les identifiants des livres sont des nombres entiers, et l’entrée contient uniquement les commandes décrites jusqu’à présent. Toute autre commande renvoie unknown command.

Votre code doit être placé dans Book.kt, Member.kt et Library.kt. Main.kt contient le code d’entrée/sortie fourni et ne peut pas être modifié.

Essayez vous-même

fun main() {
    // Code d'entrée/sortie fourni : le garder tel quel
    val input = generateSequence(::readLine).toList()
    val library = Library()
    for (line in input) {
        for (reply in library.handle(line)) println(reply)
    }
}

Toutes les leçons de Programmation orientée objet

Entraînez-vous par vous-même : Playground Kotlin