You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Kotlin中如何简化按索引取数组元素的when语句?

Kotlin when语句简化方案

你写的when语句本质是判断page是否属于0-3的合法下标,再返回对应poster元素的imageURL属性,不需要逐一枚举分支,两种精简方案如下:

方案1:数组内置方法(最精简,Kotlin 惯用写法)

poster.getOrNull(page)?.imageURL ?: "image not provided"

逻辑完全和原写法等价:

  • getOrNull(page)会自动判断下标是否在数组合法范围内,合法返回对应元素,不合法返回null
  • 安全调用?.imageURL只有元素不为空时才读取属性
  • Elvis操作符?:在前面结果为null时返回兜底字符串

如果你的poster数组长度大于4,希望仅当page为0-3时才取值,用下面的方案:

方案2:范围判断写法(可读性更高)

if (page in 0..3) poster[page].imageURL else "image not provided"

内容的提问来源于stack exchange,提问作者ABINASH KUMAR

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 21:24:02