首页 > 其他 > 详细

Scala学习笔记-06-数据结构-Map

时间:2020-02-13 18:26:30      阅读:52      评论:0      收藏:0      [点我收藏+]
  • 一系列键值对的容器
  • 键是唯一的,但值不必是唯一的
  • 可以根据键进行快速检索
  • 类别:scala.collection.mutable.Map 和 scala.collection.immutable.Map,默认是使用不可变Map

scala.collection.immutable.Map:

//定义Map
scala> val mapDogs = Map("huahua"->"雪纳瑞","erdan"->"秋田犬","happy"->"泰迪") mapDogs: scala.collection.immutable.Map[String,String] = Map(huahua -> 雪纳瑞, erdan -> 秋田犬, happy -> 泰迪) scala> mapDogs res91: scala.collection.immutable.Map[String,String] = Map(huahua -> 雪纳瑞, erdan -> 秋田犬, happy -> 泰迪)
// 按照key获取map的值 scala> mapDogs("huahua") res92: String = 雪纳瑞
// 根据key取值前先判断key是否存在Map中,否则给默认值 scala> val dogType = if(mapDogs.contains("huahua")) mapDogs("huahua") else "no dog name in map keys" dogType: String = 雪纳瑞 scala> val dogType = if(mapDogs.contains("huahua123")) mapDogs("huahua") else "no dog name in map keys" dogType: String = no dog name in map keys

// immutable Map 的值不能修改
scala> mapDogs("huahua") = "雪纳瑞串串"
<console>:46: error: value update is not a member of scala.collection.immutable.Map[String,String]
       mapDogs("huahua") = "雪纳瑞串串"
       ^

 

scala.collection.mutable.Map:

scala> import scala.collection.mutable.Map
import scala.collection.mutable.Map

scala> val mapDogs = Map("huahua"->"雪纳瑞","erdan"->"秋田犬","happy"->"泰迪")
mapDogs: scala.collection.mutable.Map[String,String] = Map(huahua -> 雪纳瑞, erdan -> 秋田犬, happy -> 泰迪)
// 修改元素的值
scala> mapDogs("huahua") = "雪纳瑞串串"

scala> mapDogs
res96: scala.collection.mutable.Map[String,String] = Map(huahua -> 雪纳瑞串串, erdan -> 秋田犬, happy -> 泰迪)

// 添加新元素
scala> mapDogs("tony") = "哈士奇"

mapDogs += ("keven"->"金毛")

 

 

 

---

Scala学习笔记-06-数据结构-Map

原文:https://www.cnblogs.com/wooluwalker/p/12304280.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!