scala学习记录,Set,Map

set:集合,表示没有重复元素的集合,特点:唯一

语法格式:val 变量名 = Set [类型](元素1,元素2...)

可变不可变

可变(mutable)可对元素进行添加,删除等操作;不可变(immutable)创建后元素不能修改

如果要定义可变的Set(mutable),需要额外导入包:import scala.collection.mutable

Set常见操作

对于可变Set,我们可用+=来添加元素,对于不可变Set,创建一个新的Set来添加元素。

对于可变Set,我们可用-=来添加元素,对于不可变Set,创建一个新的Set来删减元素。

对于Set,我们可用++=来合并元素

查询元素是否存在,使用contains

使用union方法得到两个集合的并集

使用intersect方法得到两个集合的交集

使用diff方法得到两个集合的差集

小习一下:

1.在Scala中,可变和不可变的区别?

能否修改元素

2.那个符号用于向可变元素添加元素?

+=

3.对于不可变Set,如果添加一个新元素,会发生什么?

创建一个新的Set

4.使用contains方法在Set中查询元素,返回值是什么类型?

返回一个布尔值即Boolean(true或者false)。

5.求两个Set的交集使用的方法是什么?

使用intersect方法得到两个集合的交集

Map(映射):是一种可迭代的键值对(key/Value)结构,所有值都可通过键来获取,Map中的键都是唯一的,定义时需要为键值对定义类型。

可变不可变

可变(mutable)可对元素进行添加,删除等操作;不可变Map对象不能修改

如果要定义可变的Map(mutable),需要额外导入包:import scala.collection.mutable

Map常见操作

对于可变Map,我们可用+=,put来添加元素,对于不可变Set,创建一个新的Map来添加元素。

对于可变Map,我们可用-=来添加元素,对于不可变Set,创建一个新的Map来删减元素。

用get查询Map中的值

修改:

遍历:

小习一下:

1.在 Scala 中,不可变Map和可变Map的主要区别是什么?

能否修改元素。

2.以下哪个操作符可以用于向可变Map添加元素?

+=

3.使用 get 方法查询Map中不存在的键时,返回值是什么类型?

None

4.对于不可变 Map,如果要添加新元素,会怎样?

创建一个新的 Map

5.遍历 Map 可以使用哪些方法?

for循环和foreach 方法

相关推荐
还是大剑师兰特32 分钟前
Scala面试题及详细答案100道(11-20)-- 函数式编程基础
scala·大剑师·scala面试题
林开落L1 小时前
库的制作与原理
linux·开发语言·动静态库·库的制作
m0_480502641 小时前
Rust 入门 泛型和特征-特征对象 (十四)
开发语言·后端·rust
非凡ghost2 小时前
AMS PhotoMaster:全方位提升你的照片编辑体验
windows·学习·信息可视化·软件需求
瓦特what?2 小时前
关于C++的#include的超超超详细讲解
java·开发语言·数据结构·c++·算法·信息可视化·数据挖掘
祁同伟.3 小时前
【C++】动态内存管理
开发语言·c++
一只鲲3 小时前
40 C++ STL模板库9-容器2-vector
开发语言·c++
励志不掉头发的内向程序员3 小时前
C++基础——内存管理
开发语言·c++
lifallen3 小时前
JCTools 无锁并发队列基础:ConcurrentCircularArrayQueue
java·开发语言·数据结构·算法
千里镜宵烛4 小时前
深入理解 Linux 线程:从概念到虚拟地址空间的全面解析
开发语言·c++·操作系统·线程