在Kotlin中的字符串模板中的变量后面使用下划线("_")

Arm*_*yos 5 kotlin

在Kotlin中,我正在尝试动态创建一个包含类型和日期的文件名:

var filename = "ab_$type_$date.dat"
Run Code Online (Sandbox Code Playgroud)

但是,变量之间的第二个下划线导致编译错误:

Kotlin:未解决的参考:name_

我知道我可以用旧的方式连接字符串:

var filename = "ab_" + type + "_$date.dat"
Run Code Online (Sandbox Code Playgroud)

但我想知道是否有不同的方法来完成同样的事情.有没有办法逃避字符串模板中的特殊字符或任何其他方式来使其工作?

Rus*_*lan 13

只需将表达式包装在花括号中:

var filename = "ab_${type}_${date}.dat"
Run Code Online (Sandbox Code Playgroud)