我需要檢查多個條件是這樣的:遍歷如果條件
if(condition1 && condition2 && condition3) {
...
}
然而,條件數量取決於地圖的鍵的數量。因此,如果地圖有一個價值的「如果」應該是:
if(condition1) {
...
}
如果地圖上有兩個按鍵的「如果」應該是:
if(condition1 && condition2) {
...
}
等。
我的問題是,如果有任何的方式來遍歷地圖和添加條件,「如果」,是這樣的:
for(String key : map.keySet()) {
//Now how I add conditions in every iteration?
}
編輯:
我把我的代碼示例因爲我認爲我沒有正確解釋我的問題。我有這樣的代碼:
public Integer count(String columnName1, String valueName1, String columnName2, String valueName2) {
Integer toReturn = 0;
results.first();
for (RowResult result : results.getResults()) {
if(result.get(columnName1).equals(valueName1) &&
result.get(columnName2).equals(valueName2)) {
toReturn++;
}
}
return toReturn;
}
此代碼只檢查兩列,我想提高它來檢查N.
if(result.get(columnName1).equals(valueName1) &&
result.get(columnName2).equals(valueName2) ... &&
result.get(columnNameN).equals(valueNameN)) {
toReturn++;
}
所以,我創建了一個地圖,我把列作爲鍵和值檢查爲值。新的count
方法應該是:
public Integer count(String columnName1, String valueName1, String columnName2, String valueName2) {
Integer toReturn = 0;
results.first();
for(String column : map.keySet()) {
for (RowResult result : results.getResults()) {
//I am stucked here with the if
}
}
return toReturn;
}
對於是否在地圖上每個鍵的狀態有什麼不同? –
爲什麼'for(RowResult result:results.getResults()){for(String column:map.keySet()){/ * something * /}}'應該不起作用? – MikeCAT