Java:集合与"数据结构"之间的区别

use*_*243 11 java collections data-structures

在Java中,我不了解集合与"数据结构".在我看来,集合是指列表,集合,映射,队列,而"数据结构"是指用于实现集合的数据结构,例如数组,链表或树.例如,ArrayList和LinkedList都是集合,但它们的数据结构分别是一个数组和一个链表.我是正确的,还是我混淆了条款?

Jef*_*rey 11

数据结构是表示某种数据的对象的通用术语,因此链表,数组等都是数据结构.Java意义上的集合指的是实现该Collection接口的任何类.一般意义上的集合只是一组对象.

  • 但是Java集合类型有一个值得注意的例外,它没有实现Collection:Map. (2认同)

Sid*_*rth 11

数据结构是数据在内存中的存储内部的表示方式.集合是如何访问它的.我强调"可以"这个词.

如果将数据存储在LinkedList中并对其进行排序,则性能将下降.如果使用ArrayList,相同的算法性能会提升.只是改变其在记忆中所代表的方式将有助于各种因素.

您可以"使用集合表示"访问它,您"也可以"使用"索引"来访问数据.你"可以"也去getFirst,getNext,getPrev.

您的困惑在于内部存储和访问存储之间.分开2.