在没有ListIterator的情况下显示LinkedList中的所有元素

时间:2017-02-10 07:49:20

标签: java arraylist

我在尝试弄清楚如何在LinkedList中显示所有元素时遇到问题。我可以通过让一个arraylist来跟踪每个元素的索引来解决这个问题,但是我想在不使用arraylist或数组的情况下解决这个问题。

以下是我目前所拥有的,

public void displayItems()
    {
        ArrayList<Node> links = new ArrayList<Node>();
        links.add(head);
        for (int x = 0; x < count; x++)
        {
            links.add(links.get(x).getLink());
            System.out.println(links.get(x).getData());
        }

有没有办法以上面提到的类似方法显示所有元素,但不需要数组或ListIterator?

2 个答案:

答案 0 :(得分:1)

一些例子如何在Java中循环使用LinkedList(包括你不喜欢的一个 - 使用Iterator):

LinkedList<Node> links = new LinkedList<Node>();
links.add(firstNode);
links.add(secondNode);
links.add(thirdNode);

/* For loop */
for(int i = 0; i < links.size(); i++) {
    System.out.println(links.get(i).getLink());
}

/* For-each loop */
for(Node node: links) {
    System.out.println(node.getLink());
}

/* While Loop*/
int i = 0;
while (links.size() > i) {
    System.out.println(links.get(i++).getLink());
}

/* Iterator */
Iterator<Node> it = links.iterator();
while (it.hasNext()) {
    System.out.println(it.next().getLink());
}

答案 1 :(得分:-1)

您可以使用整数作为全局变量,而将数据插入Linked List会增加此变量。

使用参数position在LinkedList类中编写方法。这里循环到位置,获取数据并返回相同的数据。