我正在开发一个Java Web应用程序,并且在我的HTML表中循环时有以下要求.
我在while循环中有一个嵌套的for循环(两者都执行相同的#次,例如3).
我的代码看起来像这样:
<table>
<thead>...</thead>
<tbody>
if (patcases != null && patcases.size() > 0) {
Iterator itr1 = patcases.iterator();
while (itr1.hasNext()) {
..some code here..
System.out.println("DA Email from webpage..."+da.getEmail());
int rCount = 0;
<tr>
for(int i=0;i<passedValues.length; i++){
...some code here..
</tr>
System.out.println("Printed row..." +rCount);
rCount ++;
} /*closing of for loop */
}/*closing of while loop */
}/* closing of if loop */
</tbody>
</table>
Run Code Online (Sandbox Code Playgroud)
现在,有了这种类型的循环结构,我在我的控制台上得到以下内容:
DA来自网页的电子邮件... abc@abc.com
印刷行... 0
印刷行... 1
印刷行... 2
DA来自网页的电子邮件... xyz@xyz.com
印刷行... 0
印刷行... 1
印刷行... 2
DA来自网页的电子邮件... 123@123.com
印刷行... 0
印刷行... 1
印刷行... 2
但我想要的输出类型如下:
来自网页的
DA电子邮件... abc@abc.com
印刷行...
0
DA来自网页的电子邮件... xyz@xyz.com
印刷行... 1
DA来自网页的电子邮件... 123@123.com
印刷行...... 2
我该怎么做呢?
任何帮助将不胜感激.
看起来你想要并行迭代.
只需做这样的事情:
Iterator<?> iter1 = ...;
Iterator<?> iter2 = ...; // or: int index = 0;
while (iter1.hasNext() &&
iter2.hasNext()) { // or: index < MAX
Object item1 = iter1.next();
Object item2 = iter2.next(); // or: index++;
doSomething(item1, item2); // or: doSomething(item1, index);
}
// perhaps additional handling if one ran out before the other
Run Code Online (Sandbox Code Playgroud)
请注意,如果可能的话,您应该使用参数化类型而不是原始类型(Effective Java 2nd Edition,Item 23:不要在新代码中使用原始类型).