我需要遍历嵌套对象来验证一些计算。前任:Category obj1 = new Category(0, 0, 10, null);Category obj2 = new Category(2, 3, 6, obj1);Category obj3 = new Category(2, 2, 4, obj1);我需要检查父母是否存在以下内容:sum2(qty * price = total) sum3(qty * price = total) 和 sum2+sum3== parent total例如:(2*2==4) (3*3==6) 和 4+6 == 10我如何使用 lambda 和流来做到这一点?public class Category { private int qty; private int price; private int total; private Category rootCategory;}
1 回答
月关宝盒
TA贡献1772条经验 获得超5个赞
用于Stream.of
创建Category
流,然后filter
对象rootCategory
不为空
int sum = Stream.of(obj1, obj2, obj3) .filter(o -> Objects.nonNull(o.getRootCategory())) .mapToInt(c -> c.getQty() * c.getPrice()) .sum();
添加回答
举报
0/150
提交
取消