????前言????
✍本文由在下【红目香薰】原创
????2022年最大愿望:【服务百万技术人次】????
环境需求
环境:win10
开发工具:IntelliJ IDEA 2021.2
maven版本:3.6.3
目录
????前言????
环境需求
Scala Collection
综合练习
总结
创建测试类【day1/demo8.scalc】,类型为【object】
Scala Collection
Scala提供了一套很好的集合实现,提供了一些集合类型的抽象。
Scala 集合分为可变的和不可变的集合。
可变集合可以在适当的地方被更新或扩展。这意味着你可以修改,添加,移除一个集合的元素。
而不可变集合类,相比之下,永远不会改变。不过,你仍然可以模拟添加,移除或更新操作。但是这些操作将在每一种情况下都返回一个新的集合,同时使原来的集合不发生改变。
接下来我们将为大家介绍几种常用集合类型的应用:
序号 | 集合及描述 |
1 | List列表 List的特征是其元素以线性方式存储,集合中可以存放重复对象。 |
2 | Set集合 Set是最简单的一种集合。集合中的对象不按特定的方式排序,并且没有重复对象。 |
3 | Map映射 Map 是一种把键对象和值对象映射的集合,它的每一个元素都包含一对键对象和值对象。 |
4 | 元组 元组是不同类型的值的集合 |
5 | terator迭代器 迭代器不是一个容器,更确切的说是逐一访问容器内元素的方法。 |
综合练习
package day1
import scala.collection.mutable.Set
object demo8 {
def main(args: Array[String]): Unit = {
// 定义整型 List
val list_init = List(11, 22, 33, 44)//创建列表
var list =list_init:+666;//向列表的尾部
var list0=66::list//向列表头部添加数据
var list1=list0.updated(2,777)//修改下标为2的值
for (i <- 0 until list1.length) {//使用列表长度遍历
print(list1.apply(i)+",")//逐一元素遍历输出
}
println()
println(list1)//列表集合输出
println(list1.max)//最大值
println(list1.min)//最小值
println(list1.sum)//计算总和
println(list1.contains(66))//判断是否有某值
println("----set----")
// 定义 Set
val set = Set(1, 2, 3, 4, 5, 6, 6, 6,7)
set.add(8);
println("set.size:"+set.size);
println("setInfo:"+set)
// 定义 Map,key&value
val map_info = Map("one" -> 1, "two" -> 2, "three" -> 3)
var map=map_info + ("four"->4)
println("-----map-----")
println(map)
println(map.get("two"))//根据key获取值
println(map.contains("four"))//判断是否有four这个key
// 创建两个不同类型元素的元组
println("----元组----")
val x = (10, "utest")
println(x)
}
}
效果:
总结
到这里有关一天学完spark的Scala基础语法教程八、集合(idea版本)就结束了
Scala集合中的list、set、map,都是比较重要的内容,自己多做做测试啊,他这里语法与java的区别很大,只有熟悉过了才能更好的应用。
希望能对大家有所帮助。
欢迎一键三连,谢谢