数组
-
Kotlin为数组增加一个Array类,基本类型数组增加了XxxArray(Byte Short Int等基本类型)。Kotlin的数组使用
Array<T>
类表示。Kotlin创建数组其实就是创建Array<T>
类的实例 -
创建数组的两种形式
- 使用arrayOf()、arrayOfNulls()、**emptyArray()**工具函数
- 使用**Array(size:Int, init:(Int)->T)**构造器
-
由于
Array<T>
类要求元素必须是引用类型。因此如果将基本类型的值存入Array<T>
种,Kotlin会将这些基本类型的值自动装箱成包装类的实例。如果需要基本类型,Kotlin提供了ByteArray、ShortArray、IntArray、LongArray、CharArray、FloatArray、DoubleArray、BooleanArray,分别对应java的byte[]、short[]、int[]、long[]、char[]、float[]、double[]、boolean[]这8种基本类型的数组。 -
对于XxxArray数组,不支持元素初始化为null的方式创建数组,因为基本类型的元素不允许为null
-
案例
var arrStr = arrayOf("jannal", "jack", "tom") //相当于java静态数组的初始化 var arrInt = arrayOf(1, 2, 3, 4) //创建指定长度、元素为null的数组,相当于java数组的动态初始化 var arrNull = arrayOfNulls<Int>(6) //长度为0的空数据 var emptyArray = emptyArray<String>() //使用lambda表达式初始化数组元素的 var lambdaArray = Array(5) { "jannal" } //创建基本类型的数组 var intArray = intArrayOf(1, 2, 3, 4) var charArray = CharArray(5, { (it * 2 +