Menu
CoddyTech

搜索馆藏目录

本课属于 Coddy Kotlin 学习旅程的“面向对象编程”单元。第 53 课,共 57 课。

challenge icon

挑战

简单

添加 SEARCH 命令。上一步的代码已在 Library.kt 中,请确保每个命令都和之前一样正常运行。

  • SEARCH <text>:文本可以包含空格。对于标题包含该文本的每本书,忽略大小写并按图书 ID 排序,每本书回复一行:Dune (available) 或 Emma (borrowed by ada)。如果没有匹配项,则回复 no matches。

提供的代码会将每一行输入传给 library.handle(line),并将返回的每条回复分别打印在一行上。成员名称是单个小写单词,图书 ID 是整数,输入中只包含目前为止介绍的命令。对于任何其他命令,回复 unknown command。

你的代码写在 Book.kt、Member.kt 和 Library.kt 中。Main.kt 包含提供的输入/输出代码,不能编辑。

亲手试试

fun main() {
    // 提供的输入/输出代码:保持原样
    val input = generateSequence(::readLine).toList()
    val library = Library()
    for (line in input) {
        for (reply in library.handle(line)) println(reply)
    }
}

面向对象编程中的所有课

自己练习: Kotlin 在线编辑器