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
val list : <IntRange>= listOf(1..19,100..199,4..39)
1:打平
val flatMap:List<Int>=list.flatMap { it } //遍历flatMap打印为1,2,3,4...392:flatMap数据转换成自定义(基本数据类型——String)
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 }