Scala实训内容2

6 阅读1分钟

1.创建一个可变 Map,用于存储图书馆中的书籍信息(键为书籍编号,值为包含书籍名称、作者、库存数量的元组),初始化为包含几本你喜欢的书籍信息。

2.使用 += 操作符添加两本新的书籍到图书馆集合中。

3.根据书籍编号查询某一本特定的书籍信息,使用 get 方法,并输出结果。

4.修改某本书籍的库存数量(假设可以通过键找到对应的元组并修改其中的值,这里体现可变 Map 的特性)。

5.使用 -= 操作符从图书馆集合中删除一本书。

6.遍历图书馆书籍 Map,并打印出每本书的信息。

import scala.collection.mutable

object SimpleLibraryMap {
  def main(args: Array[String]): Unit = {
    // 1. 创建可变Map,存储书籍信息
    val library = mutable.Map[String, (String, String, Int)](
      "001" -> ("Java编程思想", "作者A", 5),
      "002" -> ("Scala实战", "作者B", 3),
      "003" -> ("算法导论", "作者C", 4)
    )
    println("初始书籍: " + library)
    
    // 2. 添加两本新书
    library += ("004" -> ("Python从入门到实践", "作者D", 6))
    library += ("005" -> ("C++ Primer", "作者E", 2))
    println("添加新书后: " + library)
    
    // 3. 根据编号查询书籍
    val book = library.get("002")
    println("查询编号002: " + book)
    
    // 4. 修改库存数量
    if (library.contains("001")) {
      val (name, author, stock) = library("001")
      library("001") = (name, author, 10) // 修改库存为10
    }
    println("修改库存后: " + library)
    
    // 5. 删除一本书
    library -= "003"
    println("删除一本书后: " + library)
    
    // 6. 遍历所有书籍
    println("\n所有书籍信息:")
    for ((id, (name, author, stock)) <- library) {
      println(s"编号:$id 书名:$name 作者:$author 库存:$stock")
    }
  }
}