过滤操作符:

  • drop():从第一项开始去除前n个元素,并返回剩余的元素列表。
  • dropWhile{}:根据给定函数从第一项开始去掉指定元素,直到不满足条件为止的前面的元素,并返回剩余元素列表。
  • dropLastWhile{}:根据给定函数从最后一项开始去掉指定元素,直到不满足条件为止的后面的元素,并返回剩余元素的列表。
  • filter{}:过滤出所有符合给定函数条件的元素。
  • filterNot{}:过滤所有不符合给定函数条件的元素。
  • filterNotNull():过滤所有元素中不是null的元素。
  • slice():过滤一个list中指定index的元素。
  • take():返回从第一个开始的n个元素。
  • takeLast():返回从最后一个开始的n个元素。
  • takeWhile{}:返回从第一个开始符合给定函数条件的元素,直到不符合条件为止。
  • takeLastWhile{}:返回从最后一个开始符合给定函数条件的元素,直到不符合条件为止。

代码实例

private fun listOperator2() {val list2 = listOf(4, 5, 6, 7, 3, 8, 9)//不可变列表val mutableList = mutableListOf(1, 2, 3, 4, 5, 6)//可变列表,拥有add、remove、replace、clear等一系列操作函数list2.drop(3).forEach {print(it)//输出7389}println()list2.dropWhile { it < 6 }.forEach {print(it)//输出67389}println()list2.dropLastWhile { it > 6 }.forEach {print(it)//输出45673}println()list2.filter { it % 2 == 0 }.forEach {print(it)//输出468}println()list2.filterNot { it % 2 == 0 }.forEach {print(it)//输出5739}println()val listT = listOf("1", "2", null, "3")listT.forEach { print(it) }println()//输出12null3listT.filterNotNull().forEach {print(it)//输出123}println()list2.slice(listOf(1, 3, 5)).forEach {print(it)//输出578}println()list2.take(4).forEach {print(it)//输出4567}println()list2.takeLast(4).forEach {print(it)//输出}println()list2.takeWhile { it < 6 }.forEach {print(it)//输出45}println()list2.takeLastWhile { it > 6 }.forEach {print(it)//输出89}
}

kotlin集合过滤操作符相关推荐

  1. kotlin集合操作符——过滤操作符

    目录 drop dropWhile dropLastWhile filter filterNot filterNotNull slice take takeLast takeWhile 关于集合的操作 ...

  2. kotlin集合操作符——顺序操作符

    目录 reverse sort sortBy sortDescending sortDescendingBy 关于集合的操作符,直接引用书上的内容,基本上总结的很好了. reverse 返回一个与指定 ...

  3. kotlin集合操作符——生产操作符

    目录 merge partition plus zip unzip 关于集合的操作符,直接引用书上的内容,基本上总结的很好了. merge 把两个集合合并成一个新的,相同index的元素通过给定的函数 ...

  4. kotlin集合操作符——元素操作符

    目录 contains elementAt elementAtOrElse elementAtOrNull first firstOrNull indexOf indexOfFirst indexOf ...

  5. kotlin集合操作符——映射操作符

    目录 flatMap groupBy map mapIndexed mapNotNull 关于集合的操作符,直接引用书上的内容,基本上总结的很好了. 集合示例: val list = listOf(1 ...

  6. kotlin集合操作符——总数操作符

    目录 any all count fold foldRight forEach forEachIndexed max maxBy min minBy none reduce reduceRight s ...

  7. RxJava从入门到不离不弃(四)——过滤操作符

    RxJava中的过滤操作符,顾名思义,这类操作符主要用于对事件数据的筛选过滤,只返回满足我们条件的数据. 我们试想一下这样的一个需求,有一个学生集合,要求将其中成绩不及格的学生过滤,返回成绩合格的学生 ...

  8. 什么?有人整理了Kotlin 集合函数锦集!!

    自从Kotlin官宣为Android开发首选语言后,大家也都正计划很快转向Kotlin或者已经完全转向Kotlin,接下来我们直奔主题了. 我们在Android应用程序中研发过程中,对于 lists, ...

  9. Kotlin 集合函数锦集

    自从Kotlin官宣为Android开发首选语言后,大家也都正计划很快转向Kotlin或者已经完全转向Kotlin,接下来我们直奔主题了. 我们在Android应用程序中研发过程中,对于 lists, ...

最新文章

  1. python参考文献目录_[zotero/python]库中参考文献条目删除后,清除残留PDF的脚本
  2. MySQL—05—MySQL如何处理SQL语句;MySQL数据库存储引擎介绍;
  3. python基础知识面试题-[面试] 1. 关于Python的基础知识
  4. centos安装jdk7
  5. P1506 拯救oibh总部(染色+dfs)
  6. 个人博客前端模板_腾讯前端开发工程师,教你极速搭建一个个人博客网站
  7. Java多线程学习笔记-线程的使用
  8. python访问注册表_Python 操作注册表
  9. linux 内存管理_真香!Linux 原来是这么管理内存的
  10. 推荐Potplayer ----抛弃暴风影音
  11. linux经典学习网站及博客
  12. 网络抖动、丢音、卡顿
  13. 上岸重庆邮电大学软件工程学院学硕总结
  14. 7-5 单词首字母大写 (15分)
  15. android 加固服务器,服务器加固工具
  16. python解一元二次方程虚根_怎么用python解一元二次方程
  17. html标签中h4和h5,h5与h4的区别
  18. 56 核心112 线程,最高阶的英特尔Xeon Platinum 9282 就是怪兽
  19. 河北欧格教育:主图构图法
  20. 矩阵加法 矩阵乘法 Python123题解 不使用numpy

热门文章

  1. Pytorch入门实战 | 第P2周:彩色图片识别
  2. 一对数的和等于给定的数
  3. iOS开发:修改类名(Refactor—Rename)的正确姿势
  4. VS中报错C4996 怎么办?
  5. python中文字符截取乱码
  6. Quick Reference 代码速查表
  7. 简要分析光猫是如何通过运营商实现上网的
  8. 【WebLogic使用】3.WebLogic配置jndi数据源
  9. 电商商品详情如何快速高效获取,api来帮你!
  10. 如何认知MOSFET、IGBT等模拟功率器件