用lambda表达式计算一个list中的某个字段值的总和 int total = List.stream().mapToInt(entity::getDistance).sum(); 解释:List是要计算的list,mapToInt是将实体类entity中的属性转换为int,最后是sum求总共,
lambda的stream可以理解为时做了一个循环 其中:: 也是匿名函数的一种 转自:https://blog.csdn.net/lsmsrc/article/details/41747159 person -> person.getAge(); 可以替换成 Person::getAge 表达式 () -> new HashMap<>(); 可以替换成 HashMap::new 这种[方法引用]或者说[双冒号运算]对应的参数类型是Function<T,R> T表示传入类型,R表示返回类型。比如表达式person -> person.getAge(); 传入参数是person,返回值是person.getAge(),那么方法引用Person::getAge就对应着Function<Person,Integer>类型。 int totalMileages = mileage.getEquip().getMileages().stream().mapToInt(Mileage::getDistance).sum();
lambda :: 和计算list中某个字段值的总和
最新推荐文章于 2024-05-29 15:22:20 发布