如何在循环结束后调用while循环

时间:2015-01-04 17:02:18

标签: java arraylist

我的代码中有一个do ... while循环,我很喜欢它。 问题是条件是两个arraylist之间的比较,所以它第一次运行,然后条件返回false,但之后我将数字添加到其中一个arraylist(当然程序运行时)这使得两个arraylist等于,现在我想继续循环,但我不知道如何做到这一点。

任何建议将不胜感激:)

do{...} while(ArrayList1.equals(ArrayList2));

3 个答案:

答案 0 :(得分:0)

您是否考虑将此循环嵌套到另一个循环中?这样你就可以再次通过它并在某些条件下退出外循环。

答案 1 :(得分:0)

你做不到。一旦循环结束,将评估以下语句,并且即使条件为真,也不会重新访问循环。您可能希望在循环中添加元素

答案 2 :(得分:0)

如果达到这个条件,你最终会得到一个无限循环。无法理解为什么要实现这种逻辑。

为了实现这一点,你可以将do..while循环提取到一个单独的私有方法中,并将两个ArrayList作为参数传递给它。 (取决于您在循环中需要的其他详细信息。)使用向两个调用之间的列表之一添加元素的逻辑调用此方法两次。像

这样的东西
private void executeDoWhile(List arrayList1, List arrayList2)
{
  do{ ....   } while (arrayList1.equals(arrayList2);
}

main()
{
....
//call 1
executeDoWhile(arrayList1, arrayList2);

//logic to add the elements

//call 2
executeDoWhile(arrayList1, arrayList2);
}