我需要像这样比较三个Bigdecimal值。 例如:
Convert.ToInt32(
Math.Round(
(((double)120000f+(double)1f )/(double)167428f )*(double)100f
, 0 )
)
所有三个值都是BigDecimals.How如何在Java中进行比较。 谢谢。 安拉达。
答案 0 :(得分:2)
第一个问题是你必须将比较分成两个单独的检查,例如:
if ( Min <= Value && Value <= Max ) {
// true
} else {
// false
}
但是,由于您使用的是BigDecimal
,因此这些比较器(<
,<=
等)无效,因此您必须使用{{ 3}}:
if ( (Min.compareTo(Value) <= 0) && (Value.compareTo(Max) <= 0) {
// true
} else {
// false
}
答案 1 :(得分:1)
您需要使用compareTo
。
您提供的示例是:
if(Min.compareTo(Value)<=0 && Max.compareTo(Value) >=0){
//Do this
}else{
//Do this
}