2017-04-13 25 views
0
for(int i =0; i< jarray.length;i ++){ 
JsonObject jobj = jarray.getJsonObject(i); 
//i am running a database query here to fetch a record based on a value in the json object 
//i have my if block here 
if(the codition is true){ 

}else{ 
throw new CustomException 
} 

} 

我的問題是,因爲如果IF條件不滿足它不是遍歷其餘元素的數組中,並會在第一次迭代直接else塊,我如何使它遍歷整個數組,並只有在沒有任何元素滿足if條件時才轉到else塊。好心幫如果裏面還有循環for循環迭代一個JSON陣列自定義異常中的其他塊

回答

0

我認爲你可以這樣做:

var conditionSatisfied = false; 

for(int i =0; i< jarray.length;i ++){ 
    JsonObject jobj = jarray.getJsonObject(i); 

    if(the condition is true){ 
     conditionSatisfied = true; 
    } 
} 

if(!conditionSatisfied) { 
    // throw error 
} 

你循環整個陣列上,如果存在其條件是真實的任何元素,則布爾變量conditionSatisfied真正。否則conditionSatisfied仍然是false,這意味着沒有任何元素滿足條件,然後它會拋出一個錯誤(循環結束後)。

+0

謝謝,它的工作。 –