文章目录
集合类型 Collection
Kotlin本身就提供了几组非常良好的原生集合类型供你使用,分为如下几种:
Collection
代表了一组元素的通用集合。我们可以通过各种函数来访问集合,如返回集合大小、是否为空、是否包含某个元素或一组元素。
MutableCollection
支持添加和移除自身元素的 Collection,它提供了额外的功能,如add、 remove或 clear等。
List
List代表了一组有序元素的集合。因为是排序了的,我们可以通过位置请求对应的元素,使用get函数或快捷的下标中括号方法。
Mutable list
Mutablelist顾名思义,是一个支持添加和移除元素的List。
Set
是个无序的,但其中元素并不重复的集合。
MutableSet:
一个支持添加和删除元素的set。
Map
键值对( Key-value Pair)的集合,其中的键具有唯一性,也就是说一个map里不能有两个一样的键(key)
MutableMap
一个支持添加和移除元素的Map
集合类型常用操作
any:
只要其中一个元素满足判定条件,返回true。
val mList = listOf(1, 2, 3, 4, 5, 6)
println(mList.any {
it % 2 == 0 })
println(mList.any {
it > 8 })
结果:
true
false
all
如果所有元素满足条件,返回true。
val mList = listOf(1, 2, 3, 4, 5, 6)
println(mList.all {
it < 8 })
println(mList.all {
it % 2 == 0 })
结果:
true
false
count
返回匹配条件的元素数目。
val mList = listOf(1, 2, 3, 4, 5, 6)
println(mList.count {
it % 2 == 0 })
结果:3
fold
提供一个初始值,并描述从第一个到最后一个元素如何依次与这个初始值计算的操作。
val mList = listOf(1, 2, 3, 4, 5, 6)
println(mList.fold(0) {
total, next -> total + next })
println(mList.fold(1) {
total, next -> total * next })
结果:
21
720
foldright
与fold一样,但顺序是从最后一个元素到第一个。
val mList = listOf(1, 2, 3, 4, 5, 6)
println(mList.foldRight(0) {
total, next -> total + next })
println(mList.foldRight</