【问题标题】: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
    }
    

    【讨论】:

      猜你喜欢
      • 2019-05-10
      • 1970-01-01
      • 2020-03-24
      • 2018-08-23
      • 1970-01-01
      • 2017-06-14
      • 2014-05-30
      • 2013-11-17
      • 2021-03-19
      相关资源
      最近更新 更多