Kotlin中 take、drop方法使用

Kotlin中 take、drop方法使用

码农世界 2024-05-27 前端 80 次浏览 0个评论

1、take方法

private fun take() {
    val list1 = mutableListOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 0)
    //take函数是根据传入的参数挑出该集合【前n个元素】的子集合
    val list2= list1 .take(2)
    println(list2)
    //[1, 2]
 
    //takeLast函数是根据传入的参数挑出该集合【倒数n个元素】的子集合
    val list3= list1 .takeLast(2)
    println(list3)
    //[9, 0]
}

2、takeWhile

private fun takeWhile() {
    val list= mutableListOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 0)
 
    //takeWhile : 从头开始取值,不符合立即停止
    val list1= list.takeWhile {
        it % 2 == 0
    }
    println(list1)
    //[]
 
 
    //takeLastWhile : 从尾开始取值,不符合立即停止
    val list2= list.takeLastWhile {
        it % 2 == 0
    }
    println(list2)
    //[0]
}

3、dropWhile

private fun dropWhile() {
    //从头开始找不满足的开始取值,满足的抛弃头部
    val mList = mutableListOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 0)
    val resultList = mList.dropWhile { it <= 1 }
    println(resultList)
}
//[2, 3, 4, 5, 6, 7, 8, 9, 0]

4、dropLastWhile

val numbers = listOf("one", "two", "three", "four", "five", "six")
 
println(numbers.dropLastWhile{it.contains('i')}.toString()) 
// 打印结果[one, two, three, four]

 

5、dropLast

private fun dropLast() {
    //去掉最后n个开始取值
    val mList = mutableListOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 0)
    val resultList = mList.dropLast(3)
    println(resultList)
}
//[1, 2, 3, 4, 5, 6, 7]

6、drop

private fun drop() {
    //去掉前n个开始取值
    val mList = mutableListOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 0)
    val resultList = mList.drop(3)
    println(resultList)
}
//[4, 5, 6, 7, 8, 9, 0]

drop():从第一项开始去除前n个元素,并返回剩余的元素列表。

dropWhile{}:根据给定函数从第一项开始去掉指定元素,直到不满足条件为止的前面的元素,并返回剩余元素列表。

dropLastWhile{}:根据给定函数从最后一项开始去掉指定元素,直到不满足条件为止的后面的元素,并返回剩余元素的列表。

filter{}:过滤出所有符合给定函数条件的元素。

filterNot{}:过滤所有不符合给定函数条件的元素。filterNotNull():过滤所有元素中不是null的元素。slice():过滤一个list中指定index的元素。

take():返回从第一个开始的n个元素。takeLast():返回从最后一个开始的n个元素。takeWhile{}:返回从第一个开始符合给定函数条件的元素,直到不符合条件为止。

takeLastWhile{}:返回从最后一个开始符合给定函数条件的元素,直到不符合条件为止。

 

 

转载请注明来自码农世界,本文标题:《Kotlin中 take、drop方法使用》

百度分享代码,如果开启HTTPS请参考李洋个人博客
每一天,每一秒,你所做的决定都会改变你的人生!

发表评论

快捷回复:

评论列表 (暂无评论,80人围观)参与讨论

还没有评论,来说两句吧...

Top