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

如何用Range填充可变参数(varargs)?求更优实现方案

用Range填充可变参数的简洁方式

嘿,你这步骤确实有点绕!其实Kotlin里不用折腾这么多——IntRange本身就支持直接转成IntArray,完全不需要先转List再转数组这一步。

你可以把代码简化成这样:

m.getColumns(*(count..count + 35).toIntArray())

为啥能这么简化?

当你用count..count+35创建的是IntRange类型,它自带了toIntArray()扩展方法,直接就能生成包含范围内所有整数的数组,省去了中间多余的集合转换步骤。

对比你原来的繁琐写法:

// 原代码
m.getColumns(*((count.. count + 35).toList().toIntArray()))

去掉toList()调用后,代码不仅更简洁,还减少了一次集合转换的额外开销。

要是你的getColumns方法接收的是vararg Int类型,这种写法完全适配,展开运算符*能正确把数组元素拆解成可变参数传入方法。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.28 09:26:23