gpt4 book ai didi

android - Kotlin - var 属性与对象副本

转载 作者:行者123 更新时间:2023-11-29 02:19:35 24 4
gpt4 key购买 nike

<分区>

我的团队今天就 var 属性和对象复制争论不休。我们有一个 RecyclerView 适配器。适配器采用 ItemModel 列表,它具有一些属性。单击任何项​​目时,我们需要更改被单击项目的属性值。

有人说我们应该把这个属性做成一个 var。因此,我们可以为其分配新值。

有些人说我们应该使属性为 val,然后使用 ItemModel.copy 并将新值传递给副本。但为此,我们需要调用 List.map 来创建一个新列表,因为 List 是不可变的。这意味着,要更改一项的一个属性值,我们需要遍历整个列表,创建一个包含所有项的新列表和更改项的新副本。

根据我的经验,前一种方法在我看来是正确的,而后一种方法做了太多不必要的事情并且对性能和资源产生了不良影响。但是,他们在争论属性可变性等问题,并声称后者是一种更现代的编程方式。

如果后一种真的被认为是更好的方法,任何对 android 和函数式编程有很好理解的人都可以为我解释一下吗?

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