当前位置:   article > 正文

kotlin 集合 : indexOf / elementAt/ / first / last_kotlin indexoflast

kotlin indexoflast

找元素

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
}


  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
elementAt : 下标 找 元素

/**
 * 下标 找 元素
 */
private fun elementAt() {
    val mList: MutableList<String> = 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
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20

获取元素

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<Int>()
    //返回集合第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
}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
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<Int>()
    //如果是空集, 对空指针异常处理的函数,如果集合为空,则返回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
}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/576116
推荐阅读
相关标签
  

闽ICP备14008679号