scala的map集合

Map 有两种类型,可变与不可变,区别在于可变对象可以修改它,而不可变对象不可以。

默认情况下 Scala 使用不可变 Map。如果你需要使用可变集合,你需要显式的引入 import scala.collection.mutable.Map 类

在 Scala 中 你可以同时使用可变与不可变 Map,不可变的直接使用 Map,可变的使用 mutable.Map。

Map常用操作有增加,删除,修改,查询

不可变Map

添加:如果key存在,就是修改

删除。只需要提供key

查询 :get方法,输入key,如果找到,就返回包装数据,如果没有找到,就返回None

直接:map(key名)如果key不存在,就会报错

 
  1. import scala.collection.mutable

  2. object Test25 {

  3. def main(args: Array[String]): Unit = {

  4. // 不可变Map

  5. // val stu1:Map[String,Int] = Map("alice" -> 90, "bob" -> 85)

  6. //

  7. // // 1.添加

  8. // val stu_1 = stu1 + ("小花"->110)

  9. // println(stu_1)

  10.  
  11. //可变Map

  12. val stu2 = mutable.Map("alice" -> 90, "bob" -> 85)

  13. // 1.添加

  14. stu2 += ("小花" -> 110)

  15. stu2.put("小明", 99)

  16.  
  17. // 2.查询

  18. // 2.1

  19. val rs = stu2.get("小花") //找不到,返回None

  20. //他得到是一个包装对象,具体的内容需要再次调用get。rs.get

  21. // 2.2

  22. val rs1 = stu2("小花") // 找不到,直接报错

  23. println(rs.get,rs1)

  24.  
  25. // 3.删除

  26. stu2.remove("alice")

  27. stu2 -= "bob"

  28.  
  29. // 4. 遍历

  30. // 4.1 for 循环

  31. for((k,v) <- stu2) {

  32. println(s"姓名:${k},分数:${v}")

  33. }

  34. println("-"*15)

  35. // 4.2 foreach

  36. stu2.foreach{case (key,value)=>

  37. println(s"姓名:${key},分数:${value}")

  38. }

  39.  
  40. println(stu2)

  41.  
  42. // val stu2:Map[String,Int] = Map("apple" -> 5,"banana" -> 6,"peach" -> 8)

  43. // val stu2_1 = stu2 + ("pear" -> 10)

  44. // println(stu2_1)

  45. }

  46.  
  47. }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值