Tag: 插值

为什么Kotlin的字符串插值在Java中串联字符串?

所以,基本上我想知道Kotlin的字符串插值如何看Java(反编译的字节码)。 起初我以为它会使用StringBuffer(或StringBuilder)或String.format(),但它似乎是串联。 这样做真的是最佳吗?字符串池呢? 这是我的Kotlin代码: fun main(args: Array<String>) { val age : Int = 24 var mySuperString : String = "Dato is ${age} years old!" println(mySuperString) } 这里是我反编译的Java代码形式* .class文件: import java.io.PrintStream; import kotlin.Metadata; import kotlin.jvm.internal.Intrinsics; import org.jetbrains.annotations.NotNull; @Metadata(mv={1, 1, 6}, bv={1, 0, 1}, k=2, d1={"\000\024\n\000\n\002\020\002\n\000\n\002\020\021\n\002\020\016\n\002\b\002\032\031\020\000\032\0020\0012\f\020\002\032\b\022\004\022\0020\0040\003 \006\002\020\005 \006\006"}, d2={"main", "", "args", "", "", "([Ljava/lang/String;)V", "KotlinProject"}) public final […]

Kotlin中的双数字符串插值

如何使用字符串插值在Kotlin的时间段之后有2个数字的double? 例如 val d = 3.54213 println("d = $d") 将得到d = 3.54213 。 我想得到d = 3.54 。 谢谢。