24_Scala集合Map

文章目录

Scala集合Map

--默认immutable

--概念和Java一致

1.构建Map

--创建kv键值对 && kv键值对的表达

--创建immutable map

--创建mutable map

//1.1 构建一个kv键值对
val kv = "a" -> 1
println(kv) //(a,1)
//1.2构建可变Map集合
import scala.collection.mutable
val map_mutable = mutable.Map
val map = mutable.Map(kv, "b" -> 2, "c" -> 3, "d" -> 4, "e" -> 9)
    println(map)

2.增删改查

//2.mutable Map增删改查
//map的put,update操作功能相同,都是如果 有就修改,没有就添加
val kv1 = "ak" -> 999
map.put("k", 1000)

//    mutable map不能直接插入KV操作
map.update("c", -999)

map.remove("c")
println(map) //Map(e -> 9, k -> 1000, b -> 2, d -> 4, a -> 1)

3.Map的get操作细节

//    按照k获取v    Some(1000)
/**
 * get方法结果类型为Option类型,表示选项类型;这个类型只有两个对象可以选择,
 * Some,查询结果是有值
 * None,查询结果没有值
 * 此类型的目的是避免空指针异常;
 */
println(map.get("k")) //Some(1000)

//    一般写法
val maybeInt = map.get("k")
if (maybeInt.isEmpty) println("_") else println(maybeInt)

maybeInt.getOrElse(-1)    //有值直接返回,没有返回-1
相关推荐
肖田变强不变秃23 分钟前
C++实现有限元计算 矩阵装配Assembly类
开发语言·c++·矩阵·有限元·ansys
王磊鑫27 分钟前
Java入门笔记(1)
java·开发语言·笔记
喜欢猪猪36 分钟前
分布式与微服务:构建现代应用的关键架构
开发语言·php
马剑威(威哥爱编程)1 小时前
2025春招 SpringCloud 面试题汇总
后端·spring·spring cloud
硬件人某某某1 小时前
Java基于SSM框架的社区团购系统小程序设计与实现(附源码,文档,部署)
java·开发语言·社区团购小程序·团购小程序·java社区团购小程序
kucupung1 小时前
【C++基础】多线程并发场景下的同步方法
开发语言·c++
Quantum&Coder1 小时前
Objective-C语言的计算机基础
开发语言·后端·golang
五味香1 小时前
Java学习,List 元素替换
android·java·开发语言·python·学习·golang·kotlin
Joeysoda1 小时前
Java数据结构 (从0构建链表(LinkedList))
java·linux·开发语言·数据结构·windows·链表·1024程序员节
迂幵myself1 小时前
14-6-1C++的list
开发语言·c++·list