2011-08-18 47 views
0

我有一个对象数组,每个对象都有一个返回布尔值的函数。我需要做的是有一个循环持续运行,直到每个对象在每个对象上调用该函数时返回一个真值。回路流量控制

编辑:对不起,我不够清楚,我的意思是我想循环打破,当所有的对象函数返回true。

任何想法?

回答

3

如果我收到了你的问题,你可以这样做......

do 
{ 
    test = 0; 
    for(all functions) 
    { 
    char test_array[] = function_call(); 
    } 
    int i = 0; 
    for(test_array.length) 
    { 

    if(test_array[i] == true) 
    { 
     count_no_true = i++; 
    } 
    } 
    if(count_no_true == no of function) 
    {test == 1;} 
    else 
    {test == 0;}  
}while(test == 1) 
+0

是的,这可能是工作。谢谢。 –

3

的Java风格的语法:

boolean good; 
while (true) { 
    good = true; 
    foreach (MyObject o : myArray) { 
     if (!o.someFunction()) { 
      good = false; 
      break; 
     } 
    } 
    if (good) break; 
} 

我的解读是,这意味着需要每个对象都带有它的功能评估,以真正的每一次,一旦他们都评价为真跳出循环。