【问题标题】:List, Linkedlist, Arraylist in JavaJava中的列表、链表、数组列表
【发布时间】:2011-04-22 18:20:41
【问题描述】:

关于List、Linkedlist和Arraylist,哪个是单向列表,哪个是双向链表? 我们如何才能扭转它?

【问题讨论】:

  • 列表是接口。你确定你检查过 API 吗?

标签: java collections linked-list


【解决方案1】:

如果你想要一个单链表,你必须自己写。

我应该指出,制作一个实现java.util.List 的单链表并不容易。它要求您拥有ListIterator<E>,而ListIterator 规范的一部分是您可以使用hasPreviouspreviouspreviousIndex 方法在任一方向上遍历。所以要保持它既高效又忠实于单链表的口头禅将是非常困难的。

【讨论】:

    【解决方案2】:

    您可以使用Collections.reverse(..) 反转任何集合。 LinkedList(和任何Deque)有descendingIterator()

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-03-07
      • 2011-10-03
      • 2012-11-01
      • 2011-12-23
      • 1970-01-01
      相关资源
      最近更新 更多