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

如何优雅处理列表首元素与其余元素的差异化URL构建逻辑?

更简洁的URL参数构建实现

你的代码功能是生成符合特定格式的URL参数串,这里提供两种更简洁优雅的Kotlin实现方式:

方式一:使用joinToString生成参数串

利用Kotlin标准库的joinToString方法自动处理分隔符逻辑,无需手动判断索引:

val params = ids.indices.joinToString(separator = "&") { index ->
    "$separator={$separator$index}"
}
sb.append(params)

方式二:直接用appendJoin追加到StringBuilder(Kotlin 1.4+)

如果想省去中间变量,直接将结果追加到StringBuilder,可以用appendJoin方法,更高效:

sb.appendJoin("&", ids.indices) { index ->
    "$separator={$separator$index}"
}

说明

  • 两种方式都通过ids.indices直接获取列表的索引范围,替代原代码的withIndex()解构,逻辑更清晰
  • joinToString/appendJoin会自动处理第一个元素无前缀、后续元素用&分隔的规则,完全匹配你的需求
  • 当separator为assets且ids包含3个元素时,输出结果为assets={assets0}&assets={assets1}&assets={assets2},与预期一致

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.07 14:30:57