在 Android Studio(Kotlin) 中处理赋值运算符的歧义

Ank*_*jan 2 android arraylist ambiguity kotlin

我最近开始在 kotlin 中开发 Android 应用程序,并遇到了这个问题。我在活动开始时声明了 varEmployeesArraylist 并为其分配了 null,稍后我在 OnCreate 方法中将字符串值添加到其中。

在此输入图像描述

var employees: ArrayList<String>?= null
Run Code Online (Sandbox Code Playgroud)

现在,当我向其中添加值时,我收到赋值运算符歧义错误。

在此输入图像描述

在互联网上进行一些研究后,我发现对可变列表进行 += 操作有两种可能的解释 - 要么将项目附加到现有列表,要么通过将新值附加到旧列表来创建新列表并存储引用变量中的新列表。 从这里

现在我的问题是如何让编译器从其中一种解释中进行选择以添加到我的可变列表中。

谢谢。

Dun*_*ert 5

如果您使用val而不是var,则运算符将按需要工作:

val myArrayList = arrayListOf<String>()

myArrayList += "firstElement" // works fine