Java中的集合和列表有什么区别?

在Java中,CollectionList之间有什么区别?我应该在什么时候使用哪个?

136350 次浏览

Collection是Java Collections层次结构的根接口。List是一个定义有序集合的子接口,其他子接口是Queue,它通常存储准备处理的元素(例如,堆叠)。

下图演示了不同Java集合类型之间的关系:

java collections

收藏是描述可以包含其他对象集合的Java对象的高级接口。关于如何访问它们,同一集合中是否可以存在同一对象的多个副本,或者顺序是否重要,这些都不是非常特定的。名单命令的的对象集合。如果以特定顺序将对象放入列表中,则它们将保持该顺序。

决定在哪里使用这两个接口远不如决定您使用的具体实现重要。这将对程序的时间和空间性能产生影响。例如,如果你想要一个列表,你可以使用ArrayList或LinkedList,它们中的每一个都会对应用程序产生影响。对于其他集合类型(例如集合),类似的注意事项也适用。

首先,ListCollection。但是,它是一种专门的Collection

Collection就是:项目的集合。您可以添加内容、删除内容、迭代内容并查询其中有多少内容。

List将有关已定义物料序列的信息添加到其中:您可以获取ABC__1__位置的要素,您可以添加ABC__1__位置的要素,您可以删除ABC__1__位置的要素。

Collection中,您不能这样做:“此集合中的第5个元素”未定义,因为没有定义顺序。

还有其他专门的集合,例如Set,它添加了永远不会包含相同元素两次的功能。

收藏是列表的超级接口,因此每个Java列表也是集合的一个实例。集合只能顺序迭代(没有特定的顺序),而列表允许通过get(int index)方法访问特定位置的元素。

Java API是回答这个问题的最佳方法。

收藏

集合中

的根接口 等级制度。一个集合表示一个 一组对象,称为其 元素。一些集合允许 重复元素,而其他元素则不重复。 有些是有序的,有些是无序的。 JDK不提供任何直接的 此接口的实现:IT 提供更多的实现 特定的子接口,如SET和 名单。通常使用此接口 传递集合并 在最大值处操纵它们 需要通用性。

名单(扩展集合)

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

集合不同,列表通常允许 重复元素。更正式地说, 列表通常允许成对 元素E1和E2,使得 E1.等于(E2),并且它们通常 允许多个null元素,如果它们 完全允许NULL元素。它不是 很难想象有人会希望 执行一份禁止 重复项,通过抛出运行时 用户尝试执行以下操作时出现异常 插入它们,但我们期望这种用法 为了稀有.

Collection是Java集合层次结构的主接口,List(Sequence)是定义有序集合的子接口之一。

列表和集合是集合的两个子类。

在列表中,数据按特定顺序排列。

在集合中,不能包含两次相同的数据。

在集合中,它只是存储没有特定顺序的数据,并且可以包含重复的数据。