這是我的 forEach 回圈,現在我想獲取每一行的輸出并在陣列中回傳相同的任何型別的幫助。到目前為止,我已經嘗試過這樣的事情,比如假設我期望從回應中得到 2object,但我只收到一個物件,即第二個物件或最后一個物件,
public Validation save(Multipart file){
ArrayList<Item> dta = new ArrayList<>();
IntStream.range(0, data.size()).forEach(rowNo-> {
try {
Item item saveData(rowNo 2,data.get(rowNo),vlidation);
ret.add(item);
});
return dta;
}
}
uj5u.com熱心網友回復:
正如一些評論建議您可以使用流來解決這個問題,因為您已經在使用它們。
只需映射它,然后呼叫collect(Collectors.toList())即可獲取串列。
IntStream.range(0, data.size()).map(rowNo-> {
try {
return saveData(rowNo 2,data.get(rowNo),vlidation);
} catch(Exception ex) {
..
}
}).collect(Collectors.toList());
如果您不想使用流,您可以回圈并將當前專案添加到串列中:
ArrayList<Item> ret = new ArrayList<>;
IntStream.range(0, data.size()).forEach(rowNo-> {
try {
Item item = saveData(rowNo 2,data.get(rowNo),vlidation);
ret.add(item);
} catch(Exception ex) {
...
}
});
// ret is the list that you wanted
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/379580.html
