gpt4 book ai didi

list - 在 kotlin 中使用哪个函数来复制列表

转载 作者:行者123 更新时间:2023-12-02 12:39:09 34 4
gpt4 key购买 nike

拥有数据列表

val list: List<Data>

并希望将其浅拷贝到一个新列表中。

在 kotlin 中有几种方法可以做到这一点,想知道在哪种情况下应该使用哪一种?

list?.filtermutableListOf 类似,但 listOf 似乎有所不同。

有什么建议吗?

val copyData = list?.filter{true}

copyData = mutableListOf(list)

copyData = listOf(list)

最佳答案

后两个选项,mutableListOf(list)listOf(list),实际上并不复制列表,它们只是创建一个具有单个列表的新列表指向列表的项目。这不是 list 的浅拷贝,因为您无法观察其更改时的旧内容。

list.filter { true } 选项有效,即您得到一个新列表,它是 list 的副本,但它不是一个惯用的解决方案,因为它可能损害代码的可读性。

相反,请考虑list.toList()list.toMutableList() ,基于所需的可变性。

关于list - 在 kotlin 中使用哪个函数来复制列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51769593/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com