目录
一:集合的创建
List
集合的创建:
集合的遍历:
Set
Map
创建
遍历
二:集合的函数式API
maxBy函数
map函数
filter函数
any和all函数
一:集合的创建
List
集合的创建:
① listOf() 不可变集合,即不可进行添加、修改、删除,只能读取
② mutableListof() 可变集合,即可进行添加、修改、删除,以及读取
如图:
集合的遍历:
使用for循环进行遍历,如图:
Set
set的创建和遍历和上面基本一样,只是语法变成了 setOf(),mutableSetOf(),如图
Map
创建
map的创建和上述两种有一点区别,因为map为键值对,所以在创建时,需要使用到 to 这个来创建,如图:
这样我们就创建了一个以名字为键年龄为值的map集合
遍历
map的遍历也可以使用for in 来循环,但和上面有点区别,如图:
二:集合的函数式API
maxBy函数
当我们想得到map集合里年龄最大的是谁时,那么平常需要这么做:
这段代码相对来说已经很简洁了,但是如果我们用到maxBy()这个函数,那么我们可以这样写:
是不是简洁很多。
map函数
map
函数是最常用的一种函数式API,它用于将集合中的每个元素都映射成一个另外的值,映射的规则在Lambda表达式中指定,最终生成一个新的集合。比如我们将所有人的年龄+1,然后输出加了之后的年龄,就可以这样写:
结果:
filter
函数
顾名思义,filter
函数是用来过滤集合中的数据的,它可以单独使用,也可以配合刚才的map
函数一起使用。
比如我们只想保留年龄20以上的,就可以借助filter
函数来实现,代码如下所示:
any
和all
函数
any:指集合中的子集是否有一个满足条件
all:指集合中的子集是否全部满足条件