Kotlin学习之数组

Kotlin学习之数组

@(Kotlin学习)

Kotlin中的数组采用Array<T>类定义,抛弃了类C语言中“元素类型[]”的定义方式。

数组在Kotlin中使用Array类来表示,它定义了getset函数和size属性,以及一些其他有用的成员函数。

一、创建一个数组

一般创建数组时不会使用Array类的构造函数,需要分三种情况创建数组;

1.1创建已知所有元素的数组:

当需要把一组已知的数据放在一个新建的数组里,使用kotlin.arrayOf()函数。

arrayOf()参数接受数量不定的T类型的元素,病使用它们创建一个数组,然后返回这个数组。如下例:

val a = arrayOf("Hello", "kotlin")

arrayOf()函数创建了一个Array对象,包含两个元素”Hello”,”kotlin”,并将它赋值给了变量a。

如果想创建一个长度指定,每个值都为null的数组,就要用kotlin.arrayOfNulls()函数;

val nulls:Array<String?> = arrayOfNulls(2)

如果想创建一个长度为10的Int类型数组,包含从1到10,如下:

val ints = Array<Int>(10, { i -> i + 1 })
  • 第一个参数:数组的长度;
  • 第二个参数:指定每个元素的方法(Lambda表达式);
1.2创建一个空数组

Kotlin提供了kotlin.emptyArray()函数来创建空的数组,这个函数创建一个长度为0的null数组,然后将它强制转换为指定类型的数组。

val emp:Array<String?> = emptyArray()

可以使用arrayOfNulls(0)替代emptyArray()函数:

val emp2 = arrayOfNulls<String?>(0)
println(Arrays.equals(emp,emp2))//输出结果为true
1.3创建基本类型数组

Kotlin对于基本类型数组有特殊的优化,建议在涉及到基本类型的数组时使用下面列出的类,而不使用Array类。

对于Int类型数组,建议使用IntArray类代替Array类:

val ints1 = intArrayOf(1, 2, 3)

val ints2 = arrayOf(1, 2, 3)

但是要注意,IntArray类并不是Array类的子类,所以两个数组并不是相同的对象:

println(Arrays.equals(ints1,ints2))//编译出错

对于其他基本数据类型,也有相同的数组类,它们有与Array类一样的操作方式。

学海无涯苦作舟

这里写图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员丶星霖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值