)(ラムダforEachの中で複数のリストの取り扱い

銀:

編集:この質問はすでに閉鎖前に受け入れ答えを持っていました。それはされた焦点を当てました。正しい答えが到着する前に、残念ながら、それは初心者で妨害されました。

ラムダ/ストリームでこれを行うにはどのような方法?

public List<CartItem> getCartItems() {
    List<CartItem> items = new ArrayList<>();
    for (int ctr = 0; ctr < names.size(); ctr++) {
        items.add(new CartItem(names.get(ctr), prices.get(ctr), quantities.get(ctr), subTotals.get(ctr)));
    }
    return items;
}
彼らは次のとおりでした:

あなたは使用することができますIntStream

public List<CartItem> getCartItems() {
    return IntStream.range(0,names.size())
                    .mapToObj(ctr -> new CartItem(names.get(ctr), prices.get(ctr), quantities.get(ctr), subTotals.get(ctr)))
                    .collect(Collectors.toList());
}

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=283931&siteId=1