drop
返回包含去掉前 n 个元素的所有元素的列表。
assertEquals(listOf( 5 , 6 ), list.drop( 4 ))
dropWhile
返回根据给定函数从第一项开始去掉指定元素的列表。
assertEquals(listOf(3, 4, 5, 6), list.dropWhile { it < 3 })
dropLastWhile
返回根据给定函数从最后一项开始去掉指定元素的列表。
assertEquals(listOf( 1 , 2 , 3 , 4 ), list.dropLastWhile { it > 4 })
filter
过滤所有符合给定函数条件的元素。
assertEquals(listOf(2, 4, 6), list.filter { it % 2 == 0 })
filterNot
过滤所有不符合给定函数条件的元素。
assertEquals(listOf(1, 3, 5), list.filterNot { it % 2 == 0 })
filterNotNull
117 过滤操作符
过滤所有元素中不是 null 的元素。
assertEquals(listOf( 1 , 2 , 3 , 4 ), listWithNull.filterNotNull())
slice
过滤一个 list 中指定 index 的元素。
assertEquals(listOf( 2 , 4 , 5 ), list.slice(listOf( 1 , 3 , 4 )))
take
返回从第一个开始的 n 个元素。
assertEquals(listOf( 1 , 2 ), list.take( 2 ))
takeLast
返回从最后一个开始的 n 个元素
assertEquals(listOf( 5 , 6 ), list.takeLast( 2 ))
takeWhile
返回从第一个开始符合给定函数条件的元素。
assertEquals(listOf( 1 , 2 ), list.takeWhile { it < 3 })