1.首先創建一個實體類:
import lombok.AllArgsConstructor; import lombok.Data; @Data @AllArgsConstructor public class Bean { private long num1; private double num2; }
2.然後將實體類裝到list裏面,並做如下處理:
import com.google.common.collect.Lists; import java.util.List; public class Test { public static void main(String[] args) { Bean bean1 = new Bean(1, 2); Bean bean2 = new Bean(4, 5); Bean bean3 = new Bean(7, 8); List<Bean> list = Lists.newArrayList(bean1, bean2, bean3); long total1 = list.stream().map(Bean::getNum1).reduce(Long::sum).get(); double total2 = list.stream().map(Bean::getNum2).reduce(Double::sum).get(); } }
3.查看打印結果,我們希望看到的結果爲 total1 = 12; total2 = 15.0
total1 = 12 total2 = 15.0
結果正確!
4.總結
自己最近在做一個接口需求,數據分別需要從es和druid的內置sql裏面查詢數據,所以需要分別從查詢出來的list裏面合併某一指標的數據,由於量級很大所以用到了該方法,感覺很方便,故寫此博客。也是自己的第一篇,希望大家多多包涵,指正。