我如何在 Kotlin 中添加 aChar
到 a String
?
例如
fun main(args: Array<String>) {
val char = 'H'
val string = "ello World"
val appendingWorks = string + char //but not what I want...
//val prependingFails = char + string //no .plus(str:String) version
val prependingWorkaround1 = char.toString() + string
val prependingWorkaround2 = "" + char + string
val prependingWorkaround3 = String(charArray(char)) + string
}
当尝试在 Char 上调用+
(eg plus
) 时,没有接受右侧字符串的版本,因此'H' + "ello World"
无法编译
第一个解决方法可能已经足够好了,但它对我来说是 Java 中的一种回归:(String test = 'H' + "ello World";
编译得很好......)
我也不喜欢最后一种解决方法,至少在java.lang.String
我有一个接受单个字符的构造函数中,或者我可以使用java.lang.Character.toString(char c)
. Kotlin 中是否有一种优雅的方式来做到这一点?
之前是否讨论过这个问题(向plus(str:String)
Char 对象添加重载?)