步骤任务:
1.创建图书信息类,包含三个属性:书名,作者,价格
2.创建6本图书对象并添加到可变 List的尾部
3.创建1本图书对象并添加到可变 List的头部
4.创建1本图书对象并添加到可变 List的第3个位置
5.根据图书名称查询是否在列表中(通过遍历列表对比名称)
6.从列表中删除第4本书
7.对于图书按价格从高到低排序。
8.遍历图书列表,并打印每本书的详细信息
9.展示全部的总的金额
package list
import scala.collection.mutable.ListBuffer
//1.创建图书信息类,包含三个属性:书名,作者,价格
class Book(var bookName:String, var author:String, val price:Double){}
object list03 {
def main(args: Array[String]): Unit = {
val bookList:ListBuffer[Book] = ListBuffer()
//2.创建6本图书对象并添加到可变 List的尾部
val book1 = new Book("西游记","吴承恩",50.2)
bookList += book1
val book2 = new Book("三国演义","罗贯中",54.2)
bookList += book2
val book3 = new Book("红楼梦","曹雪芹",59.7)
bookList += book3
val book4 = new Book("水浒传","施耐庵",56.8)
bookList += book4
val book5 = new Book("朝花夕拾","鲁迅",52.6)
bookList += book5
val book6 = new Book("昆虫记","法布尔",57.3)
bookList += book6
//3.创建1本图书对象并添加到可变 List的头部
val book7 = new Book("凡人修仙传","忘语",30)
bookList.prepend(book7)
//4.创建1本图书对象并添加到可变 List的第3个位置
bookList.insert(2,new Book("平凡的世界","路遥",50))
//5.根据图书名称查询是否在列表中(通过遍历列表对比名称)
def searchBookByName(bookName:String):Boolean = {
for (book <- bookList) {
if (book.bookName == bookName) {
return true
}
}
false
}
//6.从列表中删除第4本书
bookList.remove(3)
//7.对于图书按价格从高到低排序。
val newBookList = bookList.sortWith((a:Book,b:Book) => {
a.price > b.price
})
//8.遍历图书列表,并打印每本书的详细信息
newBookList.foreach(book => {
println(s"书名:${book.bookName},作者:${book.author},价格:${book.price}")
//9.展示全部的总的金额
val totalPrice = bookList.map(_.price).sum
println(s"图书总金额:${totalPrice}")
})
}
}
运行结果如图: