gpt4 book ai didi

kotlin - 如何从 IntRange 初始化 Kotlin IntArray?

转载 作者:行者123 更新时间:2023-12-02 12:29:10 24 4
gpt4 key购买 nike

我正在尝试初始化 IntArray在 Kotlin 中像这样:

intArrayOf(1..9)

但我得到了一个 TypeError那个 Int是必需的,但我提供了 IntRange .有没有办法用一个范围初始化数组,还是我必须明确写出每个值?

最佳答案

使用内置函数,这就是你如何获得 IntArray来自 IntRange :

val array: IntArray = (1..9).toList().toIntArray()

这有点浪费,因为它首先构造了一个列表,其中放置了所有元素,然后也构造了一个数组。要直接执行此操作,您可以使用自己的扩展名,例如...
fun IntRange.toIntArray(): IntArray {
if (last < first)
return IntArray(0)

val result = IntArray(last - first + 1)
var index = 0
for (element in this)
result[index++] = element
return result
}

这会给你这个语法:
val array: IntArray = (1..9).toIntArray()

关于kotlin - 如何从 IntRange 初始化 Kotlin IntArray?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55210488/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com