gpt4 book ai didi

kotlin - 是否可以在函数参数中使用解构?

转载 作者:IT老高 更新时间:2023-10-28 13:39:07 31 4
gpt4 key购买 nike

Kotlin 支持解构声明:

val (a, b) = Pair(1,2)

这类似于 Python 的可迭代解包:

a, b = (1, 2)

Python 也有一个 splat/spread 运算符,允许您使用函数参数执行类似的操作:

def f(a, b): pass
pair = (1,2)
f(*pair)

kotlin 有类似的能力吗?显然,您可以手动解包结构:

f(pair.component1(), pair.component2())

但这很笨拙。有没有办法更优雅地做到这一点?我在 docs on the subject 中没有看到任何内容.

最佳答案

不,这仅适用于数组和可变参数函数

val foo = arrayOf(1, 2, 3)
val bar = arrayOf(0, *foo, 4)

关于kotlin - 是否可以在函数参数中使用解构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35901164/

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