Java iterable自定义链接列表

Java iterable自定义链接列表,java,foreach,linked-list,iterator,iterable,Java,Foreach,Linked List,Iterator,Iterable,我正在写一个LinkedList类作为作业的一部分。 LinkedList.java: LinkedList类: 我正努力让每个人和我的班一起工作 LinkedList<LinkedList> ListA = new LinkedList<>(); LinkedList<String> ListB = new LinkedList<>(); ListB.append("Test1"); ListB.append("Test2"); ListB.a

我正在写一个LinkedList类作为作业的一部分。 LinkedList.java:

LinkedList类:

我正努力让每个人和我的班一起工作

LinkedList<LinkedList> ListA = new LinkedList<>();
LinkedList<String> ListB = new LinkedList<>();

ListB.append("Test1");
ListB.append("Test2");
ListB.append("Test3");

ListA.append(ListB);

//this works fine
for (String i : ListB){
    //do something with i
}
//this does not
for (String i : ListA.index(0)){
    //do something with i
}

//both the above loops should interate over ListB
//but only the first one does
LinkedList ListA=新建LinkedList();
LinkedList ListB=新建LinkedList();
列表B.附加(“测试1”);
列表B.附加(“测试2”);
列表B.追加(“测试3”);
追加(ListB);
//这个很好用
for(字符串i:ListB){
//和我一起做点什么
}
//这是不可能的
for(字符串i:ListA.index(0)){
//和我一起做点什么
}
//上述两个循环应在ListB上相互作用
//但只有第一个有

您必须将
ListA的声明更改为类似的内容

LinkedList<LinkedList<String>> ListA = new LinkedList<>();
for (String i : ListA.index(0)){
//do something with i 
}
如果您的
链接列表
包含
链接列表
链接列表
字符串
,则必须对循环使用2个增强的

如果您使用的是Java8,您可以这样做

       Yourlist.forEach(templist ->{
       templist.forEach(s ->{
            System.out.println(s);
        });
        });

您必须将
ListA
的声明更改为如下内容

LinkedList<LinkedList<String>> ListA = new LinkedList<>();
for (String i : ListA.index(0)){
//do something with i 
}
如果您的
链接列表
包含
链接列表
链接列表
字符串
,则必须对循环使用2个增强的

如果您使用的是Java8,您可以这样做

       Yourlist.forEach(templist ->{
       templist.forEach(s ->{
            System.out.println(s);
        });
        });

这不是问题所在。编辑了帖子。顺便说一下,在我发布答案后,你已经编辑了你的问题。谢谢。事实上,这就是我遇到的问题的解决方案。很抱歉,我之前很匆忙,没有仔细阅读你的答案。这不是问题。编辑了这篇文章。顺便说一下,在我发布答案后,你已经编辑了你的问题。谢谢。事实上,这就是我遇到的问题的解决方案。很抱歉,我之前很忙,没有仔细阅读您的答案。它必须是
LinkedList
。它必须是
LinkedList