文章目录
- 1.Set集合
- 1.1 不可变Set
- 1.2 可变Set
- 2.Map
- 2.1 不可变Map
- 2.2 可变map
- 3.元组
1.Set集合
1.1 不可变Set
创建一个不可变set
val set=Set(1,2,3,4,6,5,4,4)
println(set)
//判断此set是否为不可变HashSet
val bool = set.isInstanceOf[HashSet[Int]]
println(bool)
运行:
可以看到set的打印结果是无序,不重复的,set默认是使用HashSet的,但是如果set的元素少于等于4个,会创建特殊的set
val set=Set(1,2)
println(set)
//判断set类型
val bool = set.isInstanceOf[HashSet[Int]]
println(bool)
1.2 可变Set
创建可变集合
val muSet = mutable.Set(2, 3, 4, 5, 6, 3, 3, 3)
println(muSet)
添加元素
val bool2 = muSet.add(7)
println(bool2)
val bool1 = muSet.add(3)
println(bool1)
删除元素
val bool3 = muSet.remove(5)
println(bool3)
判断元素是否存在
val bool4 = muSet.contains(1)
println(bool4)
添加成功返回true,添加失败返回false
2.Map
2.1 不可变Map
创建不可变Map
val map1=Map("hello"->10,"world"->20)
val map2=Map(("hello",11),("world",21))
println(map1)
println(map2)
遍历map
for (elem <- map1) {
val key = elem._1
val value = elem._2
println(key+" "+value)
}
val keys:Iterable[String] = map1.keys
for (elem <- keys) {
println(elem)
}
val values:Iterable[Int] = map1.values
for (elem <- values) {
println(elem)
}
获取map值
在map中通常使用getOrElse来获取map的值,第一个参数为key值,第二个参数为默认值.getOrElse方法就是根据map的key来获取值,如果根据此key获取不到值,就会使用默认值作为结果返回
map1.getOrElse("hello",1);
2.2 可变map
创建一个可变map
val muMap: mutable.Map[String, Int] = mutable.Map(("hello", 10), ("world", 20))
增加元素
val maybeInt = muMap.put("hello11", 30)
println(maybeInt)
println(muMap)
删除元素
val maybeInt1 = muMap.remove("hello111")
println(maybeInt)
println(muMap)
修改元素
muMap.update("hello11", 31)
println(muMap)
查看元素
val i = muMap.getOrElse("hello11", 1)
println(i)
3.元组
在Scala中,元组可以被理解为一个容器,可以存放各种相同或者不同类型的数据。即将多个无关的数据封装为一个整体,称之为元组。
在Scala中,元组最大只能有22个元素
元组(Tuple),本身为不可变的,可以存取不同类型的元素
val tuple=new Tuple2[String,Int]("hello",20)