2010-07-08 2 views
2

BigFraction의 필수 부분을 쉽게 얻을 수있는 방법은 BigInteger입니까?BigInteger와 같이 BigFraction의 필수 부분을 가져옵니다.

기본적으로 나는 intValuelongValue 메서드가 반환하지만 임의의 정밀도를 갖는 동일한 결과가 필요합니다.

또한 반올림을 피하기 위해 BigDecimal을 통한 간접 변환이 적합하지 않습니다.

+0

BigFraction 개체가 필요하지만 jar 파일을 온라인으로 찾을 수 없습니다. 어디서 구할 수 있니? 고마워. – SecureFish

+0

@SecureFish, http://commons.apache.org/math/download_math.cgi – finnw

답변

3

 

myBigFraction.getNumerator().divide(myBigFraction.getDemoninator()); 

?

+0

당연히'BigFraction.longValue()'가 이런 식으로 구현됩니다. 놀라운 점은'bigIntegerValue()'메소드가 없다는 것입니다. – finnw

0

당신은 그런 다음 마지막으로

BigInteger integralPart = divideAndReminder[0]; 
0

이 트릭을 할해야이

BigFraction fraction = ... 

BigInteger num = fraction.getNumerator(); 
BigInteger den = fraction.getDenominator(); 
BigInteger[] divideAndReminder = num.divideAndRemainder(den); 

처럼 뭔가를 시도 할 수 있습니다.

bigInteger = bigFraction.genNumerator().divide(bigFraction.getDenominator());