博客
关于我
kotlin 集合 : indexOf / elementAt/ / first / last
阅读量:210 次
发布时间:2019-02-28

本文共 2117 字,大约阅读时间需要 7 分钟。

找元素

indexOf : 元素 找 下标

/** * 元素 找 下标 */private fun indexOf() {       val mList = listOf(1, 2, 3, 4, 2)    //返回指定元素的下标,没有就返回-1    println(mList.indexOf(3))//2    println(mList.indexOf(0))//-1    //返回第一个符合条件的元素的下标,没有就返回-1 。    println(mList.indexOfFirst {    it == 2 })//1    //返回最后一个符合条件的元素下标,没有就返回-1 。    println(mList.indexOfLast {    it == 2 })//4}

elementAt : 下标 找 元素

/** * 下标 找 元素 */private fun elementAt() {       val mList: MutableList
= mutableListOf("a", "b", "c", "d", "e", "f", "g") //查找下标对应的元素,如果下标越界会抛IndexOutOfBoundsException。 println("下标为5的元素值:${ mList.elementAt(5)}") //下标为5的元素值:f //查找下标对应元素,如果越界会根据方法返回默认值。 println(mList.elementAtOrElse(5) { "default value" }) //f println(mList.elementAtOrElse(10) { "default value" }) //default value //查找下标对应元素,如果越界就返回null println(mList.elementAtOrNull(10)) //null}

获取元素

first :

/** * 获取第一个元素 */private fun first() {       val mList1 = mutableListOf(0, 1, 2, 3, 4, 5)    //返回集合第1个元素,    // 如果是空集,抛出异常java.util.NoSuchElementException: List is empty.。    println(mList1.first())//0    val mList2 = listOf
() //返回集合第1个元素,如果是空集, 对空指针异常处理的函数,如果集合为空,则返回null。 println(mList2.firstOrNull())//null val mList3 = listOf(1, 2, 3) //返回符合条件的第一个元素,没有则抛异常NoSuchElementException 。 println(mList3.first { it % 2 == 0 })//2 val mList4 = listOf(1, 2, 3) //对应的有针对异常处理的函数firstOrNull(predicate: (T) -> Boolean): T? , // 返回符合条件的第一个元素,没有就返回null println(mList4.first { it % 2 == 0 })//2}

last :

/** * 获取最后一个元素 */private fun last() {       val mList1 = mutableListOf(0, 1, 2, 3, 4, 5)    // 如果是空集,抛出异常java.util.NoSuchElementException: List is empty.。    println(mList1.last())//5    val mList2 = listOf
() //如果是空集, 对空指针异常处理的函数,如果集合为空,则返回null。 println(mList2.lastOrNull())//null val mList3 = listOf(1, 2, 3) //返回符合条件的最后一个元素,没有则抛异常NoSuchElementException 。 println(mList3.last { it % 2 == 0 })//2 val mList4 = listOf(1, 2, 3) //对应的有针对异常处理的函数firstOrNull(predicate: (T) -> Boolean): T? , // 返回符合条件的最后一个元素,没有就返回null println(mList4.lastOrNull { it % 2 == 0 })//2}

转载地址:http://bzss.baihongyu.com/

你可能感兴趣的文章
MySQL:某个ip连接mysql失败次数过多,导致ip锁定
查看>>
Mysql:避免重复的插入数据方法汇总
查看>>
M_Map工具箱简介及地理图形绘制
查看>>
m_Orchestrate learning system---二十二、html代码如何变的容易
查看>>
n = 3 , while n , continue
查看>>
n 叉树后序遍历转换为链表问题的深入探讨
查看>>
N-Gram的基本原理
查看>>
n1 c语言程序,全国青少年软件编程等级考试C语言经典程序题10道七
查看>>
nacos config
查看>>
Nacos Derby 远程命令执行漏洞(QVD-2024-26473)
查看>>
Nacos 与 Eureka、Zookeeper 和 Consul 等其他注册中心的区别
查看>>
Nacos2.X 配置中心源码分析:客户端如何拉取配置、服务端配置发布客户端监听机制
查看>>
NacosClient客户端搭建,微服务注册进nacos
查看>>
Nacos做注册中心使用
查看>>
Nacos原理
查看>>
Nacos发布0.5.0版本,轻松玩转动态 DNS 服务
查看>>
Nacos启动异常
查看>>
Nacos和Zookeeper对比
查看>>
Nacos在双击startup.cmd启动时提示:Unable to start embedded Tomcat
查看>>
Nacos如何实现Raft算法与Raft协议原理详解
查看>>