Bücher zurückgeben
Teil des Abschnitts Objektorientierte Programmierung der Kotlin-Journey von Coddy. Lektion 52 von 57.
Aufgabe
EinfachFüge den Befehl RETURN hinzu. Dein Code aus dem vorherigen Schritt befindet sich bereits in Library.kt; alle Befehle müssen weiterhin genau wie zuvor funktionieren.
RETURN <name> <id>: Antworte wie beim Ausleihen mitno member booderno book 9; falls das Mitglied dieses Buch nicht ausgeliehen hat, antworte mitada does not have Dune; andernfalls entferne die Ausleihe beim Mitglied, mache das Buch verfügbar und antworte mitada returned Dune.
Der bereitgestellte Code übergibt jede Eingabezeile an library.handle(line) und gibt jede zurückgegebene Antwort in einer eigenen Zeile aus. Mitgliedsnamen sind einzelne kleingeschriebene Wörter, Buch-IDs sind ganze Zahlen, und die Eingabe enthält ausschließlich die bisher beschriebenen Befehle. Jeder andere Befehl ergibt die Antwort unknown command.
Dein Code gehört in Book.kt, Member.kt und Library.kt. Main.kt enthält den bereitgestellten Eingabe-/Ausgabecode und darf nicht bearbeitet werden.
Probier es selbst
fun main() {
// Bereitgestellter Ein-/Ausgabe-Code: belasse ihn wie er ist
val input = generateSequence(::readLine).toList()
val library = Library()
for (line in input) {
for (reply in library.handle(line)) println(reply)
}
}
Alle Lektionen in Objektorientierte Programmierung
1Klassen und Objekte
Arbeiten mit DateienKlassen definierenPrimärkonstruktoreninit-Blöcke und ValidierungSekundärkonstruktorenRückblick – Bibliotheksausweis4Vererbung
Offene Klassen und UnterklassenÜberschreiben von Membernsuper und KonstruktorenAbstrakte KlassenRückblick – Mitarbeiterverzeichnis2Eigenschaften und Kapselung
Benutzerdefinierte ZugriffsmethodenSichtbarkeitsmodifikatorenPrivate Setterlazy und lateinitWiederholung – Bankkonto5Schnittstellen
Schnittstellen deklarierenStandardmethodenMehrere SchnittstellenSchnittstellen als TypenRückblick – Zahlungsmethoden8Generics
Generische FunktionenGenerische KlassenTypbeschränkungenVarianz mit in und outRückblick – Prioritätswarteschlange11Projekt: Bibliotheksverwaltung
Bücher und MitgliederBücher ausleihenÜbe selbstständig: Kotlin-Playground