一、kotlin 常用操作符
近期发现kotlin一些常用操作符挺好用的,此条用来记录一些用法(参考https://www.jianshu.com/p/85df411974cd)
1、下表操作类
2、判断类?
- any —— 判断集合中 是否有满足条件 的元素
- all —— 判断集合中的元素 是否都满足条件
- none —— 判断集合中是否 都不满足条件,是则返回true
- count —— 查询集合中 满足条件 的 元素个数
- reduce —— 从 第一项到最后一项进行累计
3、过滤类
- filter —— 过滤 掉所有 满足条件 的元素
- filterNot —— 过滤所有不满足条件的元素
- filterNotNull —— 过滤NULL
- take —— 返回前 n 个元素
4、转换类
- map —— 转换成另一个集合(与上面我们实现的 convert 方法作用一样);
- mapIndexed —— 除了转换成另一个集合,还可以拿到Index(下标);
- mapNotNull —— 执行转换前过滤掉 为 NULL 的元素
- flatMap —— 自定义逻辑合并两个集合;
- groupBy —— 按照某个条件分组,返回Map;
5、排序类
- reversed —— 反序
- sorted —— 升序
- sortedBy —— 自定义排序
- sortedDescending —— 降序
二、作用域函数
- apply ——?在闭包范围内可以任意调用该对象的任意方法,并在最后返回该对象,apply函数中表示对象本身使用的是this关键字
- also ——?在闭包范围内可以任意调用该对象的任意方法,并在最后返回该对象,apply函数中表示对象本身使用的是it
- let ——?用it代指对象本身,返回值为函数块的最后一行或指定return表达式
- with —— 用this代指本身,返回值为函数块的最后一行或指定return表达式
- run?——?run结合了 let和with两者特点,所以 能用let 和 with写的都能用 run写,run也是可以用this和省略代指调用对象本身,可以省略,然后返回值类型也是函数体 最后一句 或retrun指定
- takeIf?
- 是扩展函数
- 上下文对象的引用方式:it
- 返回值:如果代码块predicate里面返回为true,则返回这个对象本身,否则返回空
- 使用注意:结果要用?判空
- takeUnless
- 是扩展函数
- 上下文对象的引用方式:it
- 返回值:如果代码块predicate里面返回为false,则返回这个对象本身,否则返回空
- 使用注意:结果要用?判空
????????
|