如何通过提供大小在Kotlin中创建一个像Java一样的数组? [英] How can I create an array in Kotlin like in Java by just providing a size?

查看:886
本文介绍了如何通过提供大小在Kotlin中创建一个像Java一样的数组?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何像在java中一样创建数组?

How can I create a Array like we do in java?

int A[] = new int[N];

我如何在Kotlin中做到这一点?

How can I do this in Kotlin?

推荐答案

根据参考,数组按以下方式创建:

According to the reference, arrays are created in the following way:


  • 对于Java的基元类型,有不同的类型 IntArray DoubleArray 等存储未装箱的值。

它们是使用相应的构造函数和工厂函数创建的:

They are created with the corresponding constructors and factory functions:

val arrayOfZeros = IntArray(size) //equivalent in Java: new int[size]
val numbersFromOne = IntArray(size) { it + 1 }
val myInts = intArrayOf(1, 1, 2, 3, 5, 8, 13, 21)

第一个与Java相似,它只是创建一个填充了默认值的原始数组,例如为零 false 布尔

The first one is simillar to that in Java, it just creates a primitive array filled with the default value, e.g. zero for Int, false for Boolean.

非原始数组由 Array< T> 类表示,其中 T 是项目类型。

Non primitive-arrays are represented by Array<T> class, where T is the items type.

T 仍然可以是Java中的一种类型基元( Int Boolean ,...),但是里面的值将与Java的 Integer 相等, Double 依此类推。

T can still be one of types primitive in Java (Int, Boolean,...), but the values inside will be boxed equivalently to Java's Integer, Double and so on.

此外, T 可以是可空和非空,如字符串字符串?

这些是以类似的方式创建的:

These are created in a similar way:

val nulls = arrayOfNulls<String>(size) //equivalent in Java: new String[size]
val strings = Array(size) { "n = $it" } 
val myStrings = arrayOf("foo", "bar", "baz")

val boxedInts = arrayOfNulls<Int>(size) //equivalent in Java: new Integer[size]
val boxedZeros = Array(size) { 0 }


这篇关于如何通过提供大小在Kotlin中创建一个像Java一样的数组?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆