Scala中的Set集合

  • 在 Scala 中,Set 是一种集合类型,它的主要特点是元素不重复。就像是一个装东西的容器,但是这个容器不允许有相同的东西存在两次。例如,在数学中,一个集合 {1, 2, 3} 和 {1, 2, 3, 3} 是一样的,因为集合元素的重复性在数学定义中是被忽略的,Scala 中的 Set 也遵循这个原则。
  • package Test27
    // Set: 特点去重
    
    //设置一个Book,三个属性:书名,作者,价格
    case class Book2(var bookName:String,var author:String ,var price:Double) {}
    
    object caseclass {
      def main(args: Array[String]): Unit = {
        // val set1 = Set(1,2,3,4)
        // println(set1)
        //创建可变Set,添加两本相同的书
    
    
    
        val set1 = scala.collection.mutable.Set[Book2]()
    
        val book1 = new Book2("西游记", "吴承恩", 100.1)
        val book2 = new Book2("西游记", "吴承恩", 100.1)
        println(book1 == book2)
    
    
        set1 += book1
        set1 += book2
      }
    
    }
    

  • 使用伴生对象的 apply 方法
    • val set1 = Set(1, 2, 3),这会创建一个不可变的 Set(默认情况下,如果没有特别指定,Scala 会创建一个不可变的 Set)。这个 Set 中的元素是 1、2 和 3,由于 Set 的特性,不能添加重复的元素。如果尝试val set2 = Set(1, 2, 3, 3),实际上得到的 Set 和Set(1, 2, 3)是一样的。
  • 通过可变 Set 的方式创建
    • 首先需要导入可变 Set 的类,import scala.collection.mutable.Set。然后可以这样创建一个可变 Set,val mutableSet = scala.collection.mutable.Set(1, 2, 3)。与不可变 Set 不同的是,可变 Set 可以在创建后修改其元素。

你可能感兴趣的:(scala,开发语言,后端)