如何在 Kotlin 中初始化一个空数组列表? [复制]

Posted

技术标签:

【中文标题】如何在 Kotlin 中初始化一个空数组列表? [复制]【英文标题】:How to initialize an empty array list in Kotlin? [duplicate] 【发布时间】:2018-11-21 17:37:52 【问题描述】:

我有一个空数组列表:

var mylist: ArrayList<Int> = ArrayList()

当我想在其中设置值时出现此错误:

java.lang.IndexOutOfBoundsException: Invalid index 0, size is 0

问题是:如何初始化我的列表?

【问题讨论】:

不要使用set,而是使用add.。也使用工厂而不是构造函数:val list = mutableListOf&lt;Int&gt;()。另请注意,我指定了val 而不是var(它与列表的可变性无关)。 【参考方案1】:

根据api-doc:

val list = arrayListOf<Int>()

这里也提到了这一点:How to initialize List in Kotlin? 。

【讨论】:

arrayList 和 kotlin 中的数组不一样吗?【参考方案2】:

我建议你写

var myList: ArrayList<Int> = arrayListOf()

【讨论】:

val myList = arrayListOf&lt;Int&gt;() 读起来好多了。 如果是数组而不是arrayList怎么办?

以上是关于如何在 Kotlin 中初始化一个空数组列表? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

为啥我的数组列表即使在初始化后也会抛出空指针异常?

在 Kotlin 中处理可为空或空列表的惯用方式

如何在没有初始化和特定数量元素的情况下在 Kotlin 中创建对象数组?

带有空指针的 2D 指针数组 c++

如何在 RxJava 2 和 Kotlin 中将 null 传递给具有可空类型的 Observable

如何在 C# 中初始化一个空数组?