
package caseclass
import scala.collection.mutable.ListBuffer
object classClass03 {
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", 3)
val bookList = scala.collection.mutable.ListBuffer(book1, book2, book3)
val book4 = Book("004", "高效能人士的七个习惯", "韦伯", 10)
if(addNewBook(bookList, book4)){
println("添加成功")
} else {
println("图书已经存在,添加失败")
}
val bookName = "沉思录"
if(queryBook(bookList, bookName)){
println(s"<<${bookName}>> 存在!")
} else {
println(s"<<${bookName}>> 不存在!")
}
delBook(bookList,bookName)
val orderBookList = bookList.sortBy(_.price).reverse
orderBookList.foreach(ele => {
println(s"书名:《${ele.bookName}》")
println(s"作者: ${ele.author}")
println(s"价格: ${ele.price}")
println()
})
}
def delBook(bookList: ListBuffer[Book], bookName: String):Boolean = {
val result = bookList.find(_.bookName == bookName)
if(result.isDefined){
bookList -= result.get
true
} else {
false
}
}
def queryBook(bookList: ListBuffer[Book], bookName: String):Boolean = {
bookList.exists(_.bookName == bookName)
}
def addNewBook(bookList: ListBuffer[Book], book: Book):Boolean = {
if(bookList.exists(_.id==book.id)){
false
} else {
bookList += book
true
}
}
}
