gpt4 book ai didi

java - Lists、ArrayLists、Maps、Hashmaps、Collections 等之间有什么区别?

转载 作者:太空狗 更新时间:2023-10-29 22:36:11 24 4
gpt4 key购买 nike

自从我重新开始使用 Java 编程以来,我一直在使用 HashMap,但没有真正理解这些集合的东西。

老实说,我不太确定一直使用 HashMap 是否最适合我或生产代码。到目前为止,只要我能够按照我在 PHP 中调用它们的方式获取我需要的数据,这对我来说并不重要(是的,我承认你现在在想什么消极的事情)在哪里 $this_is_array[ 'this_is_a_string_index'] 为调用变量数组提供了很多便利。

所以现在,我已经使用 Java 工作了 3 个多月,遇到了我上面指定的接口(interface)并想知道,为什么会有这么多这些东西(更不用说 vector ,抽象列表 {哦,列表是在...})?

我的意思是它们之间有何不同?

更重要的是,在我的案例中最好使用什么界面?

最佳答案

API 非常清楚它们之间的区别和/或关系:


Collection

集合层次结构中的根接口(interface)。集合表示一组对象,称为其元素。有些集合允许重复元素,有些则不允许。有些是有序的,有些是无序的。

http://download.oracle.com/javase/6/docs/api/java/util/Collection.html

列表

有序集合(也称为序列)。该界面的用户可以精确控制每个元素在列表中的插入位置。用户可以通过整数索引(在列表中的位置)访问元素,并在列表中搜索元素。

http://download.oracle.com/javase/6/docs/api/java/util/List.html

设置

不包含重复元素的集合。更正式地说,集合不包含满足 e1.equals(e2) 的一对元素 e1 和 e2,并且最多包含一个空元素。顾名思义,该接口(interface)对数学集合抽象进行建模。

http://download.oracle.com/javase/6/docs/api/java/util/Set.html

map

将键映射到值的对象。 map 不能包含重复的键;每个键最多可以映射到一个值。

http://download.oracle.com/javase/6/docs/api/java/util/Map.html


您对上述内容有什么特别困惑的地方吗?如果是这样,请编辑您的原始问题。谢谢。

关于java - Lists、ArrayLists、Maps、Hashmaps、Collections 等之间有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4131655/

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