【发布时间】:2015-06-03 04:34:32
【问题描述】:
与 ArrayList 不同,LinkedList 不能使用索引访问特定点的元素。
如果是这样,那么 ListIterator 提供返回 LinkedList 中特定点的索引的功能的意义何在?
如果我不能使用 LinkedList 来访问元素,为什么我还需要知道它的索引。我在这里错过了什么吗?
【问题讨论】:
-
您可以将
get()用于 LinkedList,但它的时间复杂度为 O(n),因此在某些情况下可能效率低下。但是您可以根据需要使用元素索引来估计列表中元素的顺序或其他内容。 -
@Zefick 你应该这样回答。
ListIterator也不仅仅适用于LinkedLists。 -
@Kayaman 这是我第一次听到这个。所以我想你的意思是说 ListIterator 可以用于任何 List 类型的对象.. 包括 ArrayLists ?
-
@Grateful
List接口定义了listIterator()方法,不出所料地返回ListIterator。LinkedList在任何情况下都是一个奇怪的结果,因为几乎没有理由使用它来代替ArrayList。 -
@Zefick 你能把你的评论变成答案吗?我想将此问题标记为“已解决”。谢谢。
标签: java linked-list