如果我有这样的列表
var foo = mutableListOf("John", "Wayne")
如果要在列表顶部添加元素,到目前为止,我正在考虑两个选项。
第一位:foo.add(0, "Twyla")
第二:foo = (mutableListOf("Twyla") + foo).toMutableList()
我不是以上两个选项在性能方面的表现如何,但总体上推荐的方法是什么?
答案 0 :(得分:2)
这两个选项并不完全相同:第一个只是将一个项目插入到现有可变列表的开头,第二个创建一个新列表,然后将其转换为另一个新列表可变列表。
我认为,如果您适合更改现有列表,则应该选择第一个选项,因为它比第二个选项所需的内存少。
答案 1 :(得分:1)
您可以使用 add(index, value) 方法。
fun main() {
val list1: MutableList<Int> = mutableListOf(2,3,4)
println(list1.toString())
list1.add(0, 1)
println(list1.toString())
}
Output:
[2, 3, 4]
[1, 2, 3, 4]