写点什么

使用 Kotlin 语言初始化数组

用户头像
mengxn
关注
发布于: 2020 年 05 月 31 日

翻译原文地址

1.概览

在本次快速教程中,我们来研究一下如何在Kotlin语言中初始化数组。

2.arrayOf库方法

Kotlin有一个内置的arrayOf方法,该方法将提供的枚举值转换为给定类型的数组:

val strings = arrayOf("January", "February", "March")

3.基本数组

我们也可以通过原始值使用arrayOf方法。

但是,Kotlin会将原始值自动装箱到其对应的对象包装器类中,这将对性能产生不利影响。为了避免这种开销,Kotlin对原始数组提供了广泛的支持。有专门用于以下类型的arrayOf方法:double,float,long,int,char,short,byte,boolean。

我们可以使用其专用的arrayOf方法轻松地初始化基本的int数组:

val integers = intArrayOf(1, 2, 3, 4)

4.通过索引延期初始化

有时我们不想在实例化时定义数组的值。在这种情况下,我们可以创建一个空值数组。

实例化后,我们可以访问并设置数组的字段。有几种方法可以执行此操作,但是一种常见的方法是使用Kotlin的索引属性。此属性返回数组的有效索引范围。我们可以使用范围来访问并在for循环中设置数组的值。

让我们使用这种方法初始化平方数数组:

val array = arrayOfNulls<Number>(5)
for (i in array.indices) {
array[i] = i * i
}

5.使用初始化构造器生成值

基本数组和对象数组都具有接受初始化函数作为第二个参数的构造函数。此初始化函数将索引作为输入参数,使用该函数将其转换为适当的值,然后将其插入数组。

我们可以用一行代码初始化平方数数组:

val generatedArray = IntArray(10) { i -> i * i }

如前所述,这种构造函数也可用于对象数组:

val generatedStringArray = Array(10) { i -> "Number of index: $i" }

6.总结

在本教程中,我们看到了如何在Kotlin中初始化数组。我们发现了对原始数组的广泛支持。我们还了解了如何将数组构造函数与初始化函数一起使用来编写简洁的代码。

与往常一样,在GitHub上获得该代码。

发布于: 2020 年 05 月 31 日阅读数: 96
用户头像

mengxn

关注

还未添加个人签名 2018.07.25 加入

还未添加个人简介

评论

发布
暂无评论
使用Kotlin语言初始化数组