如何从Kotlin调用Java的字符串构造函数(char ,int offset,int length)?
我正在将一些Java代码迁移到Kotlin,并且我无法将调用移植到Java的String构造函数(char[], int, int)
因为它在Kotlin中不可用。
只有(char[])
构造函数似乎可用。 我如何克服这一点?
PS我通过写作:( (java.lang.String(buf, 0, i) as String)
克服这个问题,似乎java.lang.String
和kotlin.String
是不同的。 但它看起来不太好。
例如,如果你有来自java的char数组
public class Test { public static char[] chars = {'a','b','c','d'}; }
并且你想使用格式(char[], int, int)
的构造函数,
那么你可以这样做。
var a = Test.chars.slice(0..i).toString()
这将采取你的字符数组,切片范围0直到我,然后把它作为一个字符串。
那么你可以把它包装在一个函数中,然后离开你
你可以直接使用构造函数。 这在Kotlin中是有效的:
val s = String(byteArrayOf(65,66,67,68,69), 0, 3)