【问题标题】:How to iterate array forever until break statement using while loop?如何使用while循环永远迭代数组直到break语句?
【发布时间】:2017-02-17 21:41:55
【问题描述】:
我想迭代缓冲数组/列表,直到在 while 循环中执行 break 语句。
如果缓冲区为空或达到最大值,则重新加载缓冲区。
buffered_array[]
while (buffered_array.hasNext){
if(condition){
break;
}
// statements here...
if (buffered_array.last or equals to max){
// reload buffered_array
}
}
最好的方法是什么??
【问题讨论】:
标签:
java
arrays
while-loop
iterator
buffer
【解决方案1】:
将你的while放入无限loop,一旦内部循环完成(到达终点)然后再次将数组重新初始化到开头,在outter loop的下一次迭代中
buffered_array[]
while(true){
buffered_array[] =.....; // set to beginning/reload
while (buffered_array.hasNext){
if(condition){
break;
}
}
}
但是您需要在代码中的某个位置中断外循环,这样您就可以将boolean 变量设置为true,然后您可以将其设置为false 或设置if 条件来中断它
buffered_array[]
boolean flag=true; // either set it to false somewhere in you loop
while(flag){
buffered_array[] =.....; // set to beginning/reload
while (buffered_array.hasNext){
if(condition){
break;
}
}
if(condition){break; or flag=false;} // or break the outter loop with some condition
}