Kotlin集合操作符

集合操作符只适用于操作集合

元素操作类
constains -- 判断是否有指定元素
elementAt -- 返回对应的元素,越界会抛出IndexOutOfBoundsException
firstOrNull -- 返回符合条件的第一个元素,没有 返回null
lastOrNull -- 返回符合条件的最后一个元素,没有 返回null
indexOf -- 指定元素的下标,没有 返回-1
singleOrNull -- 返回符合条件的单个元素,如有没有符合或超过一个,返回null

判断类
any -- 判断集合中 是否有满足条件的元素
all -- 判断集合中的元素 是否都满足条件
none -- 判断集合中是否都不满足条件,是则返回true
count -- 查询集合中 满足提哦案件的元素个数
reduce -- 从第一项到最后一项进行累计

过滤类
filter -- 过滤出所有满足条件的元素
filterNot -- 过滤出所有不满足条件的元素
filterNotNull -- 过滤出非NULL的元素
take -- 返回前n个元素

转换类
map -- 转换成另一个集合
mapIndexed -- 除了转换成另一个集合,还可以拿到Index(下标)
mapNotNull -- 执行转换前过滤出非NULL的元素
flatMap -- 自定义逻辑合并两个集合
group by -- 按照某个条件分组,返回Map

排序类
reversed -- 反序
sorted -- 升序
sortedBy -- 自定义排序
sortDescending -- 降序
 

举个例子:

通过对数组一序列操作最终输出一个字符串

fun main() {
    val a = arrayOf("4", "0", "7", "i", "f", "w", "0", "9")
    val index = arrayOf(5, 3, 9, 4, 8, 3, 1, 9, 2, 1, 7)
    index
        //过滤出元素值<a数组长度的元素
        .filter { it < a.size }
        //index的元素值作为a数组的下标并转换成a数组的元素值
        .map { a[it] }
        //将数组的元素两两拼接
        .reduce {
            acc, s ->
            "$acc$s"
        }
        //打印结果
        .also {
            println("密码是:$it")
        }
}

更多集合操作符的使用可以参考 集合操作概述 - Kotlin 语言中文站

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值