Kotlin 如何创建接受参数并打印其名称的函数?
多次调用Kotlin 如何创建接受参数并打印其名称的函数?,kotlin,printing,Kotlin,Printing,多次调用println(“a$a”)会受到影响。我们是否可以创建一个新函数并只调用foo(a)?这不容易/直接实现(目前) 考虑到你的乐趣,你必须使用以下语法: fun-foo(a:任何){ println(“${::a.name}”:$a”)//未编译 } 不幸的是,根据最新的Kotlin Eclipse插件,该功能目前仅适用于属性和函数名,而不适用于局部变量(尚未),因为它向我展示了 阅读上述讨论,以便找到可能的替代方案和更多信息。@deHaar哦,对不起,这是我的错@deHaar我想创
println(“a$a”)
会受到影响。我们是否可以创建一个新函数并只调用foo(a)
?这不容易/直接实现(目前)
考虑到你的乐趣
,你必须使用以下语法:
fun-foo(a:任何){
println(“${::a.name}”:$a”)//未编译
}
不幸的是,根据最新的Kotlin Eclipse插件,该功能目前仅适用于属性和函数名,而不适用于局部变量(尚未),因为它向我展示了
阅读上述讨论,以便找到可能的替代方案和更多信息。@deHaar哦,对不起,这是我的错@deHaar我想创建一个新函数
funfoo(a:Any)
,用于打印参数名称和值。像foo(a)
会打印a5
。这能回答你的问题吗?即使有可能,在这种情况下也无济于事;我假设对于调用valx=3;foo(x)
询问者想要打印x:3
,但是使用::a.name
会打印a:3
@AlexeyRomanov是的,你是对的。。。这不是一个不起作用的很好的例子。我不知道任何反思是否有效。。。
val a = 5
println("a $a") // instead of this, we can call foo(a)