Scala入门:列表(List)

大数据技术原理与应用

【版权声明】博客内容由厦门大学数据库实验室拥有版权,未经允许,请勿转载!
[返回Spark教程首页]

在后面的Spark学习中,我们会用到列表。

下面我们首先声明一个列表:

val intList = List(1,2,3)

列表有头部和尾部的概念,可以使用intList.head来获取上面定义的列表的头部,值是1,使用intList.tail来获取上面定义的列表的尾部,值是List(2,3),可以看出,头部是一个元素,而尾部则仍然是一个列表。

由于列表的头部是一个元素,所以,我们可以使用::操作,在列表的头部增加新的元素,得到一个新的列表,如下:

val intList = List(1,2,3)
val intListOther = 0::intList

注意,上面操作执行后,intList不会发生变化,依然是List(1,2,3),intListOther是一个新的列表List(0,1,2,3)

::操作符是右结合的,因此,如果要构建一个列表List(1,2,3),实际上也可以采用下面的方式:

val intList = 3::2::1::Nil

上面代码中,Nil表示空列表。
我们也可以使用:::操作符对不同的列表进行连接得到新的列表,比如:

val intList1 = List(1,2)
val intList2 = List(3,4)
val intList3 = intList1:::intList2

注意,执行上面操作后,intList1和intList2依然存在,intList3是一个全新的列表。

实际上,Scala还为列表提供了一些常用的方法,比如,如果要实现求和,可以直接调用sum方法,如下:

intList.sum

子雨大数据之Spark入门
扫一扫访问本博客