case 添加

19 阅读1分钟
package casetlass

object classClass03 {
  // 1. 定义case class封装图书信息
  case class Book(id: String, bookName: String, author: String, price: Double)

  def main(args: Array[String]): Unit = {
    val book1 = Book("001", "高效能人士的七个习惯", "韦伯", 50)
    val book2 = Book("002", "沉思录", "皇帝", 20)
    val book3 = Book("003", "自控力", "xx", 30)

    val bookList = scala.collection.mutable.ListBuffer(book1, book2, book3)

    val book4 = Book("004", "高效能人士的七个习惯", "韦伯", 50)
    if (addNewBook(bookList, book4)) {
      println("添加成功")
    } else {
      println("图书已经存在,添加失败")
    }

    bookList.foreach(ele => {
      println(s"书名:《${ele.bookName}》")
      println(s"作者:${ele.author}")
      println()
    })
  }

  // 补全添加图书的方法(仅修复语法和逻辑错误,无额外内容)
  def addNewBook(bookList: scala.collection.mutable.ListBuffer[Book], book: Book): Boolean = {
    // 检查图书ID是否已存在
    if (bookList.exists(_.id == book.id)) {
      false
    } else {
      bookList += book
      true
    }
  }
}

image.png