Scala | Set 图书馆书籍管理系统

45 阅读4分钟

实训内容

图书馆书籍管理系统

内容要求:

1.创建一个可变 Set,用于存储图书馆中的书籍信息(假设书籍信息用字符串表示,如 “Java 编程思想”“Scala 实战” 等),初始化为包含几本你喜欢的书籍。

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

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

4.检查某一本特定的书籍(如 “Python 从入门到实践”)是否在图书馆集合中,使用 contains 方法,并输出结果。

5.创建另一个可变 Set,表示另一个图书馆的书籍集合。

6.求出两个图书馆书籍集合的并集,使用 union 方法,并输出结果。

7.求出两个图书馆书籍集合的交集,使用 intersect 方法,并输出结果。

8.求出当前图书馆相对于另一个图书馆的差集,使用 diff 方法,并输出结果

分解代码

1.创建一个可变 Set,用于存储图书馆中的书籍信息(假设书籍信息用字符串表示,如 “Java 编程思想”“Scala 实战” 等),初始化为包含几本你喜欢的书籍。

    var library1 = Set("Java 编程思想", "Scala 实战", "深入理解计算机系统")

    println("1.初始图书馆(library1)书籍:" + library1)

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

library1 += "Python 编程:从入门到实践"
library1 += "数据结构与算法分析"

println("2.添加两本新的书籍后:" + library1)

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

library1 -= "Java 编程思想"

println("3.删除Java 编程思想后:" + library1)

4.检查某一本特定的书籍(如 “Python 从入门到实践”)是否在图书馆集合中,使用 contains 方法,并输出结果。

println(library1.contains("Python 编程:从入门到实践"))  // true

5.创建另一个可变 Set,表示另一个图书馆的书籍集合。

val library2 = Set("Python 从入门到实践", "MySQL 必知必会", "Scala 实战")

println("5. 第二个图书馆(library2)书籍:" + library2)

6.求出两个图书馆书籍集合的并集,使用 union 方法,并输出结果。

val bingji = library1.union(library2)

    println("6. 两个图书馆的并集:" + bingji)

7.求出两个图书馆书籍集合的交集,使用 intersect 方法,并输出结果。

val jiaoji = library1.intersect(library2)

println("7. 两个图书馆的交集:" + jiaoji)

8.求出当前图书馆相对于另一个图书馆的差集,使用 diff 方法,并输出结果

val diffBooks = library1.diff(library2)

println("8. library1相对于library2的差集:" + diffBooks)

完整代码

object test1 {
  def main(args: Array[String]): Unit = {

    // 1.创建可变 Set,初始化为包含几本你喜欢的书籍。
    var library1 = Set("Java 编程思想", "Scala 实战", "深入理解计算机系统")

    println("1.初始图书馆(library1)书籍:" + library1)

    // 2.添加两本新的书籍到图书馆集合中,使用 += 操作符
    library1 += "Python 编程:从入门到实践"
    library1 += "数据结构与算法分析"

    println("2.添加两本新的书籍后:" + library1)

    // 3.从图书馆集合中删除一本书,使用 -= 操作符。
    library1 -= "Java 编程思想"

    println("3.删除Java 编程思想后:" + library1)

    // 4.检查某一本特定的书籍(如 “Python 从入门到实践”)是否在图书馆集合中,使用 contains 方法,并输出结果
    println(library1.contains("Python 编程:从入门到实践"))  // true

    // 5.创建另一个可变 Set,表示另一个图书馆的书籍集合。
    val library2 = Set("Python 从入门到实践", "MySQL 必知必会", "Scala 实战")

    println("5. 第二个图书馆(library2)书籍:" + library2)

    // 6.求出两个图书馆书籍集合的并集,使用 union 方法,并输出结果。
    val bingji = library1.union(library2)

    println("6. 两个图书馆的并集:" + bingji)

    // 7.求出两个图书馆书籍集合的交集,使用 intersect 方法,并输出结果。
    val jiaoji = library1.intersect(library2)

    println("7. 两个图书馆的交集:" + jiaoji)

    // 8.使用 diff 方法求出两个图书馆的差集,并输出结果
    val diffBooks = library1.diff(library2)
    println("8. library1相对于library2的差集:" + diffBooks)

  }
}

屏幕截图 2025-11-26 160453.png