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 方法

相关推荐
墩墩分墩20 小时前
【Go语言入门教程】 Go语言的起源与技术特点:从诞生到现代编程利器(一)
开发语言·后端·golang·go
CHANG_THE_WORLD21 小时前
并发编程指南 同步操作与强制排序
开发语言·c++·算法
仰泳之鹅21 小时前
【C语言】深入理解指针(5)
c语言·开发语言
二向箔reverse1 天前
深度学习中的学习率优化策略详解
人工智能·深度学习·学习
悠哉悠哉愿意1 天前
【机器学习学习笔记】线性回归实现与应用
笔记·学习·机器学习
无为之士1 天前
君正交叉编译链工具mips-gcc540-glibc222-64bit-r3.3.0.smaller.bz2编译st-device-sdk-c
c语言·开发语言
源力祁老师1 天前
深入分析 json2(新)与标准的 jsonrpc的区别
开发语言
小wanga1 天前
C++知识
java·开发语言·c++
学渣676561 天前
文件传输工具rsync|rust开发环境安装|Ascend实验相关命令
开发语言·后端·rust