解決使用lambda表示式BigDecimal運算子不能被識別的問題
阿新 • • 發佈:2021-03-07
基於下面連結提到的一個問題,在使用lambda表示式對BigDecimal型別的資料進行操作的時候,會遇到操作運算子BigDecimal::add編譯無法識別的問題,具體原因詳見連結;
解決辦法:
BigDecimal sums = testFoods.stream().map(f -> BigDecimal.valueOf(f.getP())).collect(Collectors.toList()).stream().reduce(BigDecimal.ZERO, BigDecimal::add);
另,在實際處理資料的時候避免精度丟失,應儘量使用BigDecimal型別來存放資料處理結果
內容原創,轉載請註明出處