[英]I am trying to retrieve results from two for each loops
我正在尝试从两个 for-each 循环中检索数据。 我期望它在同一行或同一行上获取数据。
int i=0,j=0;
System.out.println("First Elements out---");
for(Element ele1:els){
System.out.println(els.get(i));
i++;
}
System.out.println("Second Elements out---");
for(Element ele2:els){
System.out.println(els.get(j));
j++;
}
实际结果:
First Elements out---
Element_1_1
Element_1_2
Second Elements out---
Element_2_1
Element_2_2
预期结果:
Element_1_1 : Element_2_1
Element_1_2 : Element_2_2
在循环内使用System.out.print
而不是System.out.println
以避免打印换行符。 您需要在每个项目之后添加空格,以便它们在每行上正确间隔,并且您需要一个空System.out.println();
在每个循环之后调用,以便两个循环在不同的行上打印。
您可以使用索引值循环。 我假设列表/数组都有相同数量的元素供您以预期的方式打印。
示例代码:
//you need to get the length and you can directly use this in the loop
int number_of_elements = els_one.length();
for(int i=0;i<number_of_elements;i++){
System.out.println(els_one.get(i)+" : "+els_two.get(i));
}
假设两个 Element 的大小相同,请检查以下代码:
for (int i=0; i<els_1.size(); i++){
System.out.println(els_1.get(i) + " : " + els_2.get(i));
}
还假设 Elements 实现了 size() 方法。
请注意,如果元素的大小/长度不同,则应检查 null 指针等。
for(int i = 0, i< els.size()-1; i+=2){ System.out.println(els.get(i) + ": " + els.get(i + 1)); }
可以for(int i = 0, i< els.size()-1; i+=2){ System.out.println(els.get(i) + ": " + els.get(i + 1)); }
上面是否是你所期望的? 尽管我认为根据您的用例,最好使用不同的数据结构,例如 2D 数组/HashMap。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.