开发者学堂课程【Scala 核心编程 - 进阶:Map 的删除操作】学习笔记,与课程紧密连接,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/610/detail/9042
Map 的删除操作
内容介绍:
一、更新 map 的元素
二、添加 map 方式
三、删除 map 元素
一、更新 map 的元素
1.代码演示:
val map5= mutable.Map((“A”,1),(“B”,”北京”),(“C”,3))
map5(“AA”) = 20 //因为 AA 不存在,所以相当于添加
println(“map5=”+map5)
运行结果为:
map5=Map(A->1,AA->20,C->3,B->北京)
如果给的 key 是存在的,
如下:
val map5= mutable.Map((“A”,1),(“B”,”北京”),(“C”,3))
map5(“A”) = 20
println(“map5=”+map5)
运行结果为:
map5=Map(A->20, C->3,B->北京)
这就实现了 A 的更新( map 把更新和添加融合在一起)
2.说明:
(1)map 是可变的,才能修改,否则报错。
(2)如果 key 存在:则修改对应的值,key 不存在,等价于添加一个 key-val.
类似于在 mysql 数据库中的学习,语句:sql = “delete from 表 where id =100”,假如这个 id 存在,就删除,假如不存在,也不报错,不产生影响。
二、添加 map 方式
1.方式一-增加单个元素
val map5= mutable.Map((“A”,1),(“B”,”北京”),(“C”,3))
map4+=(“D”->4)
map4+=(“B”->50)
println(map4)
添加时, key 是存在,这时相当于更新,下面是代码的实现:
val map5= mutable.Map((“A”,1),(“B”,”北京”),(“C”,3))
map5+=(“A”->100)
println(“map5=”+map5)
运行结果为:
map5=Map(A->100, C->3,B->北京)
2.方式二-增加多个元素
val map5= mutable.Map((“A”,1),(“B”,”北京”),(“C”,3))
val map5=map4+(“E”->1,”F”->3)
map4+=(“EE”->1,”FF”->3)
说明:
当添加一个 key-value ,如果 key 存在就是更新,如果不存在,则是添加。
三、删除 map 元素
1.重要代码:
val map5= mutable.Map((“A”,1),(“B”,”北京”),(“C”,3))
map5(“A”) = 20
map5+=(“A”->100)
map5-=(“A”,”B”)
//注意:map5-=(“A”,”B”)不等价于 map5=map5-(“A”,”B”)
//-=的底层做了一系列的包装,有方法,不能简单的理解为赋值
println(“map5=”+map5)
运行结果:
map5=(C->3)
如果添加了一个不存在的 key,也不会报错,将上面的 map5-=(“A”,”B”)
改为 map5-=(“A”,”B”,“AAA”),运行结果为:map5=(C->3),没有异常抛出
2.说明:
(1)“A”,“B” 就是要删除的 key ,可以写多个
(2)如果 key 存在,就删除,如果 key 不存在,也不会报错