笔记---kotlin边角料---持续更新

getOrNull(), getOrDefault(), 和 getOrElse() 是用于处理集合(Collections)中元素获取的三个不同函数。

  1. getOrNull(index: Int):

    • 该函数用于从列表(List)或数组(Array)中获取指定索引位置的元素。
    • 如果索引位置有效,即在范围内,则返回该索引位置的元素;如果索引位置无效(超出范围),则返回 null
    • 这有助于避免数组越界异常,因为它不会抛出异常,而是返回一个可能为 null 的值。
    val myList = listOf(1, 2, 3, 4, 5)
    val element = myList.getOrNull(2) // 返回 3,因为索引 2 对应的元素是 3

  2. getOrDefault(key: K, defaultValue: V):

    • 该函数用于从映射(Map)中获取指定键对应的值。
    • 如果映射包含指定键,则返回与该键相关联的值;如果映射不包含指定键,则返回指定的默认值。
    • 这有助于避免在键不存在时抛出异常,而是提供一个默认值。
    val myMap = mapOf("a" to 1, "b" to 2, "c" to 3)
     val value = myMap.getOrDefault("b", 0) // 返回 2,因为键 "b" 对应的值是 2
  3. getOrElse(index: Int, defaultValue: (Int) -> T):

    • 该函数用于从列表(List)或数组(Array)中获取指定索引位置的元素。
    • 如果索引位置有效,则返回该索引位置的元素;如果索引位置无效,则返回通过 lambda 函数提供的默认值。
    • 与 getOrNull() 不同,getOrElse() 允许提供一个计算默认值的 lambda 函数。
    val myList = listOf(1, 2, 3, 4, 5) 
    val element = myList.getOrElse(7) { index -> index * 2 } // 返回 14,因为索引 7 不存在,使用 lambda 函数计算默认值
  • 8
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

所谓北

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值