gpt4 book ai didi

android - 在 lambda 函数中访问变量名称

转载 作者:行者123 更新时间:2023-11-29 18:34:36 25 4
gpt4 key购买 nike

我正在尝试访问迭代器中变量的名称

listOf(someClassVariable, anotherClassVariable, yetAnotherClassVariable).forEach {
if (it.foo()) {
map.add(it, ::it.name)
}
}

但在 ::it.name 处出现 unsupported [对变量的引用尚不支持] 错误。有什么想法/解决方法吗?

最佳答案

反之亦然,即拥有一个对类变量的引用列表并遍历它们,然后通过对其调用 invoke 来获取实际值:

listOf(::someClassVariable, ::anotherClassVariable, ::yetAnotherClassVariable).forEach { varRef ->
val varValue = varRef() // assignment optional... you can also just do it the way you want ;-)
if (varValue.foo())
map.add(varValue, varRef.name)
}

关于android - 在 lambda 函数中访问变量名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54790948/

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