Avatar ·

如何在 Kotlin 中初始化一个空的 MutableList?

大家好!我刚从 Java 转到 Kotlin,遇到了一个简单但令人困惑的问题。

我需要创建一个空的 MutableList,以便之后添加元素。在 Java 中,我会写类似 ArrayList list = new ArrayList<>(); 的代码。但在 Kotlin 中,我看到了很多不同的方法,不知道哪个是正确的。

以下是我尝试过的:

// 方式 1
var list1 = mutableListOf()

// 方式 2
var list2: MutableList<String> = mutableListOf()

// 方式 3
var list3 = emptyList<String>()

// 方式 4
var list4 = ArrayList<String>()

问题在于:

  • emptyList() 返回一个不可变的列表,我无法向其中添加元素。
  • 不指定类型的 mutableListOf() 虽然可以工作,但之后我无法添加字符串——会报错。
  • 使用 ArrayList 的方式可以工作,但看起来不够 Kotlin 风格。