BigDecimal
값이 0보다 큰 경우 어떻게 비교할 수 있습니까?
답변
다음과 같이 간단합니다.
if (value.compareTo(BigDecimal.ZERO) > 0)
에 대한 문서는compareTo
실제로 -1, 0 또는 1을 반환하도록 지정하지만보다 일반적인 Comparable<T>.compareTo
방법은 적절한 세 가지 경우 0, 0 또는 0보다 큰 값만 보장하므로 일반적으로 그 비교를 고수합니다.
답변
더 나은 방법 :
if (value.signum() > 0)
답변
compareTo()
클래스에 내장 된 함수를 사용하십시오 .
답변
방법을 사용하는 것이 더 안전합니다 compareTo()
BigDecimal a = new BigDecimal(10);
BigDecimal b = BigDecimal.ZERO;
System.out.println(" result ==> " + a.compareTo(b));
콘솔 프린트
result ==> 1
compareTo()
보고
- a가 b보다 큰 경우 1
- b가 b보다 작은 경우 -1
- a가 b와 같으면 0
이제 당신의 문제에 사용할 수 있습니다
if (value.compareTo(BigDecimal.ZERO) > 0)
또는
if (value.compareTo(new BigDecimal(0)) > 0)
도움이 되었기를 바랍니다.
답변
BigDecimal 오브젝트에서 “.intValue ()”를 사용하는 것이 0보다 강하지 않은지 확인하려는 경우 올바르지 않습니다. 남은 유일한 옵션은 “.compareTo ()”메소드입니다.
답변
BigDecimal obj = new BigDecimal("100");
if(obj.intValue()>0)
System.out.println("yes");