kotlin take的作用
从头开始获取指定数量的元素
val numbers = listOf("one", "two", "three", "four", "five", "six")
// 取集合的4个集合
Log.d("======take", numbers.take(3).toString()) // 打印结果[one, two, three]
takeLast的作用
从尾开始获取指定数量的元素
val numbers = listOf("one", "two", "three", "four", "five", "six")
// 取集合的倒数4个集合
Log.d("======takeLast", numbers.takeLast(3).toString()) // 打印结果[four, five, six]
takeWhile的作用
它将不停获取元素直到排除与谓词匹配的首个元素。如果首个集合元素与谓词匹配,则结果为空。
val numbers = listOf("one", "two", "three", "four", "five", "six")
// takeWhile不停获取元素直到排除与谓词匹配的首个元素
Log.d(
"======takeWhile",
numbers.takeWhile { !it.startsWith("f") }.toString()
) // 打印结果[one, two, three]
takeLastWhile的作用
与 takeLast() 类似:它从集合末尾获取与谓词匹配的元素区间。区间的首个元素是与谓词不匹配的最后一个元素右边的元素。如果最后一个集合元素与谓词匹配,则结果为空。
val numbers = listOf("one", "two", "three", "four", "five", "six")
Log.d(
"======takeLastWhile",
numbers.takeLastWhile { it != "three" }.toString()
) // 打印结果[four, five, six]
kotlin dropLast 的作用
从头去除给定数量的元素
val numbers = listOf("one", "two", "three", "four", "five", "six")
//从头去掉第一个元素
Log.d("======drop", numbers.drop(1).toString()) // 打印结果[two, three, four, five, six]
drop 的作用
从尾去除给定数量的元素
val numbers = listOf("one", "two", "three", "four", "five", "six")
// 从尾去掉第一个元素
Log.d("======dropLast", numbers.dropLast(1).toString()) // 打印结果[one, two, three, four, five]
dropWhile()的作用
与具有相同谓词的 takeWhile() 相反:它将首个与谓词不匹配的元素返回到末尾。
val numbers = listOf("one", "two", "three", "four", "five", "six")
// 从尾去掉第一个元素
Log.d("======dropWhile", numbers.dropWhile{it.length == 3}.toString()) // 打印结果[three, four, five, six]
dropLastWhile()的作用
与具有相同谓词的 takeLastWhile() 相反:它返回从开头到最后一个与谓词不匹配的元素。
val numbers = listOf("one", "two", "three", "four", "five", "six")
Log.d("======dropLastWhile", numbers.dropLastWhile{it.contains('i')}.toString()) // 打印结果[one, two, three, four]