gpt4 book ai didi

java - 将函数添加到 BigDecimal 变量

转载 作者:行者123 更新时间:2023-11-30 07:38:07 26 4
gpt4 key购买 nike

我正在处理一些计算 - 我一直使用 BigDecimal。我为此创建了特殊的实用程序,以便更容易进行比较:

public class BigDecimalUtil {

public static boolean isZero(BigDecimal value) {
return value == null?false:value.compareTo(BigDecimal.ZERO) == 0;
}

public static boolean isPositive(BigDecimal value) {
return value == null?false:value.compareTo(BigDecimal.ZERO) > 0;
}

public static boolean isNegative(BigDecimal value) {
return value == null?false:value.compareTo(BigDecimal.ZERO) < 0;
}

public static boolean isEqual(BigDecimal value1, BigDecimal value2) {
return value1.compareTo(value2) == 0;
}

public static boolean isLessThan(BigDecimal value1, BigDecimal value2) {
return value1.compareTo(value2) < 0;
}

public static boolean isMoreThan(BigDecimal value1, BigDecimal value2) {
return value1.compareTo(value2) > 0;
}
}

但实际上有时使用起来也不是很舒服。有没有办法直接将此功能添加到 Bigdecimal 类中?

让我们这样说:

BigDecimal number = new BigDecimal("0");
if(number.isPositive){
//do something
}

在本例中,isPositive 是我来自 util 的函数。

最佳答案

除非您愿意扩展 BigDecimal 类,否则这是不可能的,在这种情况下您可以尝试以下操作:

public class BigDecimal2 extends BigDecimal {
public boolean isPositive() {
return compareTo(BigDecimal.ZERO) > 0;
}
//...
}

关于java - 将函数添加到 BigDecimal 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35078263/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com