如何使用java.util.ListIterator输出保存对象的Linked List?

时间:2012-10-29 20:33:05

标签: java

嗨,我遇到了这个问题,我不知道如何处理...我有一个链接列表存储对象工作正常。但现在我试图使用迭代器显示链表的内容,我明白这不会像

那样简单
ListIterator<String> iterator = LibraryUser.listIterator();  


iterator = LibraryUser.listIterator();
while (iterator.hasNext())
 System.out.println(iterator.next());

因为类型......有没有办法做到这一点?

OH正确!我需要覆盖toString,不要......

3 个答案:

答案 0 :(得分:1)

如果你知道的是LibraryUser包含Object的实例(也就是说,你不知道它们是String个实例),你可以使用:

ListIterator<Object> iterator = LibraryUser.listIterator();
while (iterator.hasNext()) {
    System.out.println(String.valueOf(iterator.next()));
}

或更简单地说:

for (Object item : theList) {
    System.out.println(String.valueOf(item));
}

答案 1 :(得分:1)

你的代码应该可以正常工作:

LinkedList<String> l = new LinkedList<>();
        l.add("aaa");
        l.add("sdjs");
        ListIterator<String> itr = l.listIterator();
        while(itr.hasNext()){
            System.out.println(itr.next());
        }

以上代码打印:

  

AAA
  sdjs

答案 2 :(得分:0)

另一种方法是考虑使用增强的for循环。类似的东西:

LinkedList<Object> list = new LinkedList<Object>();
list.add("abc");
list.add("def");
for(Object element: list){
    System.out.println(element);
}