通常我使用JavaScript,在它里面你可以看到:
var objectVar = "myOtherVariable";
var someObject = {
myVariable: "something",
myOtherVariable: "something else"
}
// writes out 'something else'
console.log(someObject[objectVar])
在Kotlin有可能做这样的事吗?
例如,如果您有
val myVar = "a"
object someObject{
var a: MutableSet<ImageView> = mutableSetOf()
var b: MutableSet<ImageView> = mutableSetOf()
}
您能以任何方式通过使用myVar
到达someObject.a
吗?
编辑
由于普遍的共识是不应该这样做,即使可能,我设法改变了逻辑,所以我不必使用它。
2条答案
按热度按时间ar5n3qh51#
xfyts7mz2#
可能并不直接适用于您的用例,但这里有一些不需要黑魔法的惯用替代方法:
在这两种情况下,都不是传递一个保存属性名称的String,而是传递一段访问属性的代码。