从链表的对象访问元素

时间:2014-02-12 14:57:35

标签: java linked-list

我在名为data的链表中有一个名为subdata的链表,我想使用linkedlist数据访问我添加的字符串,例如element1。我有一些代码,但我无法使它工作。我尝试了很多不同的东西,比如Object obj=x.next();而不是LinkedList<Strings> obj=x.next();。我还在print语句中尝试了x.next().get(0);,但没有运气。

LinkedList<LinkedList> data=new LinkedList<>();
LinkedList<String> subData=new LinkedList<>();

subData.add("element1");
data.add(subData);
Iterator x = data.listIterator(0);
while(x.hasNext()){
LinkedList<String> obj=x.next();
System.out.println(obj.get(0));
}

错误:

 aclass.java:245: error: incompatible types
    LinkedList<String> obj=x.next();
                                 ^
      required: LinkedList<String>
      found:    Object

2 个答案:

答案 0 :(得分:3)

你的通用打字搞砸了。试试这个:

public static void main(String[] args) {
    LinkedList<LinkedList<String>> data=new LinkedList<>();
    LinkedList<String> subData=new LinkedList<>();

    subData.add("element1");
    data.add(subData);
    Iterator<LinkedList<String>> x = data.listIterator(0);
    while(x.hasNext()){
        LinkedList<String> obj=x.next();
        System.out.println(obj.get(0));
    }
}

答案 1 :(得分:1)

System.out.println("elements1: " + data.iterator().next().iterator().next());