40.Set、Map、TreeSet、TreeMap操作代码实战

一、Set、Map代码实战

    import scala.collection.mutable  //因为scala推荐我们用不可变包的里集合,所以这里需要导入mutable包

    val data = mutable.Set.empty[Int]  //构建空对象,需要指明元素类型
    data ++= List(1,2,3)  //追加集合
    data += 4   //追加元素
    println(data)
    data --= List(2,3)  //减少集合
    println(data)
    data += 1   //追加重复元素,但是Set并不会添加进去
    println(data)
    data.clear   //清除Set里的元素
    println(data)
    println
    
    //7
    var map = mutable.Map.empty[String,String]  //先构建一个空的Map
    
    map("java") = "hadoop"
    map("scala") = "spark"
    println(map)
    println(map("java"))  //根据key找到value

输出:

Set(1, 2, 3, 4)
Set(1, 4)
Set(1, 4)
Set()

Map(scala -> spark, java -> hadoop)
hadoop


Set和Map中的元素是无序的,若需要有顺序,则TreeSet和TreeMap可以实现

二、TreeSet、TreeMap代码实战

   import scala.collection.mutable.TreeSet
    val treeset = TreeSet(1,3,9,5,7,6,8,2,4,9)
    println(treeset)
    val treeSetForChar = TreeSet("Spark","Scala","Hadoop")
    println(treeSetForChar)
    
   //7
    import scala.collection.immutable.TreeMap
    val treemap = TreeMap("java" -> "hadoop", "scala" -> "spark")
    println(treemap)


会自动排好顺序


输出:

TreeSet(1, 2, 3, 4, 5, 6, 7, 8, 9)
TreeSet(Hadoop, Scala, Spark)
Map(java -> hadoop, scala -> spark)



参考资料来源于大数据梦工厂 深入浅出scala 第40讲 由王家林老师讲解



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值