JDK中是否有方法引用来减去双精度数?

时间:2015-09-21 10:10:41

标签: java java-8 method-reference

Double::sum是添加双精度的方法参考,即。 (a,b) -> a+b

为什么JDK中没有针对减号的方法引用?即(a,b) -> a-b

4 个答案:

答案 0 :(得分:9)

Double.sum这样的方法的主要目的是帮助减少用例或Arrays.parallelPrefix因为减号不是关联函数,所以它不适合这个用例。

不建议仅为了这种简单方法而添加第三方库依赖项。请记住,如果您更喜欢使用lambda表达式的命名方法,那么您始终可以创建自己的方法。

E.g。

static double minus(double a, double b) {
    return a-b;
}

并使用MyClass::minusThirdPartyClass::minus ...

一样有用

答案 1 :(得分:2)

没有内置方法。但我不认为,除了简单地做任何其他魔术

http://user.mydomain.com/scripts/admin/superUser.js

你似乎在想这里:)

答案 2 :(得分:0)

因此,没有用于减去双打的内置方法。但是,如果您使用BigDecimal存储小数,那么您可以尝试:

BigDecimal a = new BigDecimal("10.6");
BigDecimal b = new BigDecimal("4.3");
BigDecimal result = a.subtract(b);
System.out.println(result); 

否则你可以用简单的方法减去两个数字,即a-b。另请注意,在Java中,double值为IEEE floating point numbers

答案 3 :(得分:-1)