- map
val list:List<Int> = listof(1,3,4,9) 1. 使用传统的方式条件元素: var newList = ArrayList<Int>() list.forEach{ newList.add(it) } //it为list元素 2. 使用map来进行元素操作返回一个新的List val newList = list.map { it + 1 } //it为List里面的元素 3.map可以用来数据转换 val newList1 = list.map(it.toFloat) val newList2 = list.map(Int::toFloat) //函数引用的模式,默认一个it类的实例 - flatMap
1:打平 //遍历打印为 0,1,2,3 val flatMap:List<Int> = list.flatMap { it } //遍历打印为 0,1,2,3 2:flatMap数据转换成自定义(基本数据类型――String) val list : <IntRange> = listOf(1..19,100..199,4..39) val newlist = list.flatMap {it.map { "nub.$it" } } //第一个it是IntRange(也就是内部集合元素),第二个it是内部集合里面的元素 - 最后通过代码打印来理解下map,flatMap val intRange:IntRange = 0..3 val list:List<IntRange> = listOf(0..3) //遍历打印为 0..3 val map:List<IntRange> = list.map { it } //遍历打印为 0..3 val map:List<Int> = intRange.map { it } //遍历打印为 0,1,2,3 val flatMap:List<Int> = list.flatMap { it } //遍历打印为 0,1,2,3 - reduce
val list = listof(1,4,8,2,9) //集合求和 var reduce = list.reduce { acc, i -> acc+i } //集合求阶层 var reduce1 = (1..4).reduce { acc, i -> acc * i } 转载请标明出处:kotlin高级函数
文章来源: kotlin高级函数