gpt4 book ai didi

java - Java中的集合-更好的编程实践

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:30:55 26 4
gpt4 key购买 nike

在大多数使用集合的 Java 代码中,我看到这样的事情。

List<String> list = new ArrayList<String>(); 

但我一直想知道为什么它优于

ArrayList<String> = new ArrayList<String>();

我研究了一下,但没能理解很多。

最佳答案

因为当通过接口(interface)使用对象时,您可以稍后更改实现。例如:

public ArrayList<String> doSomething(..) {
...
return arrayList;
}

但一段时间后,ArrayList 似乎对于此方法的调用者主要使用的内容来说效率低下,因此您决定将其更改为 LinkedList

  • 如果您的方法只返回List,您就完成了
  • 如果您的方法返回ArrayList,您应该去调用该方法的所有地方并更改它。如果有人使用了一些特定于 arraylist 的方法怎么办 - 你必须考虑如何重构它。这就是好的情况。如果您的代码是一个库,而其他分支机构/公司正在使用它,您可能会被低效的代码所困扰。

另见:

关于java - Java中的集合-更好的编程实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8381996/

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