当前位置: 首页 > 知识库问答 >
问题:

JAVA的String[]的Kotlin等价物是什么?

米子轩
2023-03-14

我看到Kotlin有ByteArray、ShortArray、IntArray、CharArray、DoubleArray、FloatArray,它们相当于Java中的Byte[]、Short[]、Int[]、Char[]、Double[]、Float[]

现在我想知道,是否有StringArray等价于Java的String[]

共有1个答案

淳于思淼
2023-03-14

对于String,没有特殊情况,因为String在JVM上是一种普通的引用类型,与Java原语(intdouble,...)不同--将它们存储在引用数组 中需要将它们装箱为integerdouble对象。像Kotlin中的intarray这样的专用数组的目的是存储非装箱的原语,消除装箱和取消装箱的开销(与Javaint[]而不是integer[]相同)。

您可以使用数组 (对于nullables使用数组 ),这相当于Java中的string[]:

val stringsOrNulls = arrayOfNulls<String>(10) // returns Array<String?>
val someStrings = Array<String>(5) { "it = $it" }
val otherStrings = arrayOf("a", "b", "c")

另请参见:语言引用中的数组

 类似资料:
  • 这份Kotlin宣言的Java等价物是什么? 我认为这是一个“函数类型”但我不确定。是方法还是变量?我知道Unit的意思是void,那么它是返回void的方法吗? 唯一能让我明白它的意思的方法是,如果我能看到它在Java是怎么写的(单位后面没有问号)。

  • 是否有任何Golang等效的Java的? 将源阵列从特定的起始位置复制到目标阵列。要复制的参数数量由参数决定。位于到的组件将从复制到目标阵列中。

  • 我仍然在学习和试验JavaFX中的GUIs,我似乎无法得到我所希望的“外观”…我试图在一个面板中分组几个标签,然后在另一个面板中添加另一个标签。但我似乎不知道如何在JavaFX中正确使用“JPanels”? 如有任何帮助,将不胜感激 编辑:这是我试图通过尝试不同的布局来实现的,但运气仍然不好

  • 在Mac和Windows上,可以使用 <罢工> (替换 )和 (替换 ) (Docker 18.03+)位于容器内。 对于Linux来说,有没有一个可以在不传递env变量或使用各种CLI命令提取它的情况下开箱即用的方法?

  • 我们有以下场景:使用Sonarqube扫描Windows10中的两个项目。 null 提前谢了。