Kotlin(数组)学习笔记

数组

概述

  • Array 类代表着数组
  • [] 可以用于访问数组的元素,实际上 [] 被进行了操作符的重载,调用的是 Array 类的 setter 和 getter 方法

创建数组

直接指定长度

val fixedSizeArray = arrayOfNulls(5)

使用装箱操作

val arr = arrayOf(1, 2, 3)
val intArr = intArrayOf(1, 2, 3)    //同理还有 booleanArrayOf() 等

使用闭包进行初始化

val asc = Array(5, { i -> i * i })  //0,1,4,9,16

空数组

 val empty = emptyArray()

java中声明数组,跟在C语言中声j明是一样的,以整型数组为例

int [] intArray = new int []{1,2,3,4}

其它基本类型的数组声明与之类似,只要把int替换为long、float、double、boolean、char即可。但在Kotlin中,声明并赋值一个整型数组的语句

var intArray:IntArray = intArrayOf(1, 2, 3)

Java与Kotlin有以下区别:

  • 1、Kotlin另外提供了新的整型数组类型即IntArray;
  • 2、分配一个常量数组,Kotlin调用的是intArrayOf方法,并不使用new关键字;
    长整型数组:数组类型为LongArray,分配方法为longArrayOf;
    浮点数组:数组类型为FloatArray,分配方法为floatArrayOf;
    双精度数组:数组类型为DoubleArray,分配方法为doubleArrayOf;
    布尔型数组:数组类型为BooleanArray,分配方法为booleanArrayOf;
    字符数组:数组类型为CharArray,分配方法为charArrayOf;
var longArray:LongArray = longArrayOf(1, 2, 3,4)
var floatArray:FloatArray = floatArrayOf(1.0f, 2.0f, 3.0f,4.0f)
var doubleArray:DoubleArray = doubleArrayOf(1.0, 2.0, 3.0,4.0)
var booleanArray:BooleanArray = booleanArrayOf(true, false, true,false)
var charArray:CharArray = charArrayOf('a', 'b', 'c','f')

还有一点java是有字符串数组的但是kotlin并不存在StringArray

String[] stringArray = new String[] {"hello", "java"};

如果再kotlin中使用字符串数组得使用Array

var stringArray:Array = arrayOf("hello", "kotlin")
//同理
var intArray:Array = arrayOf(1, 2, 3)
var longArray:Array = arrayOf(1, 2, 3)
var floatArray:Array = arrayOf(1.0f, 2.0f, 3.0f)
var doubleArray:Array = arrayOf(1.0, 2.0, 3.0)
var booleanArray:Array = arrayOf(true, false, true)
var charArray:Array = arrayOf('a', 'b', 'c')

你可能感兴趣的:(Kotlin(数组)学习笔记)