我看到Kotlin有ByteArray, ShortArray, IntArray, CharArray, DoubleArray, FloatArray相应byte[], short[], int[],char[], double[], float[]的Java相同的东西.
现在我想知道,有没有StringArray相当于Java的String[]?
hot*_*key 187
有没有针对特殊情况String,因为String是在JVM一个普通的参考类型,与此相反的Java原语(int,double,...) -它们存储在一个基准Array<T>要求拳击它们变成状物体Integer和Double.专门阵列等目的,IntArray在科特林是存储非盒装元,摆脱装箱和拆箱的开销(一样的Java的int[]替代Integer[]).
你可以使用Array<String>(和Array<String?>nullables),这相当于String[]Java:
val stringsOrNulls = arrayOfNulls<String>(10) // returns Array<String?>
val someStrings = Array<String>(5) { "it = $it" }
val otherStrings = arrayOf("a", "b", "c")
Run Code Online (Sandbox Code Playgroud)
Dan*_*anu 13
使用 arrayOf,arrayOfNulls,emptyArray
var colors_1: Array<String> = arrayOf("green", "red", "blue")
var colors_2: Array<String?> = arrayOfNulls(3)
var colors_3: Array<String> = emptyArray()
Run Code Online (Sandbox Code Playgroud)
ARG*_*Geo 11
Array of Strings在Kotlin中创建空白,您应该使用以下六种方法之一:第一种方法:
val empty = arrayOf<String>()
Run Code Online (Sandbox Code Playgroud)
第二种方法:
val empty = arrayOf("","","")
Run Code Online (Sandbox Code Playgroud)
第三种方法:
val empty = Array<String?>(3) { null }
Run Code Online (Sandbox Code Playgroud)
第四种方法:
val empty = arrayOfNulls<String>(3)
Run Code Online (Sandbox Code Playgroud)
第五种方法:
val empty = Array<String>(3) { "it = $it" }
Run Code Online (Sandbox Code Playgroud)
第六种方法:
val empty = Array<String>(0, { _ -> "" })
Run Code Online (Sandbox Code Playgroud)
这些类型是存在的,因此您可以创建基元的数组,而不是盒装类型.由于String不是Java中的原语,因此您可以Array<String>在Kotlin中使用Java作为Java的等价物String[].
对于Strings和其他类型,您只需使用Array<*>. IntArray存在的原因和其他原因是为了防止自动装箱。
所以int[]涉及到IntArray哪里Integer[]涉及到Array<Int>。
创建字符串数组的一些常见方法是
这将创建一个包含 5 个字符串的数组,其初始值为空字符串。
<String?>(5)这将创建一个大小为 5 且初始值为 null 的数组。您可以使用字符串数据来修改数组。
当您已经知道数组的内容时,您可以直接初始化数组。
还有一种创建多维字符串数组的简单方法。
var 矩阵 = 数组(5){数组(6) {""}}
这是创建一个 5 行 6 列且初始值为空字符串的矩阵的方法。
| 归档时间: |
|
| 查看次数: |
79963 次 |
| 最近记录: |