원의 정확한 영역을 찾기 위해 radius*radius*pi
을 곱해야하지만, 필자가 적어 둔 코드는 작동하지 않습니다. 그것은Java Double을 역 참조 할 수 없음
ERROR
----jGRASP exec: javac -g Circle.java
Circle.java:7: error: double cannot be dereferenced
BigDecimal area = radius.multiply(pi);
^
1 error
CODE 기본 형식에서 작동하지 않습니다 역 참조
import java.math.*;
public class Circle {
public BigDecimal findArea(double radius){
double pi = 3.14159;
radius = radius * radius;
BigDecimal bd = new BigDecimal("1");
BigDecimal area = pi.multiply(radius);
return area;
}
}
정말 그 코드의 오류입니까? 왜 'radius.multiply (pi)'라고 말하고, 다른 하나는'pi.multiply (radius)'라고 말할까요? –
그러나 :'pi * radius' (또는'radius * pi')를 사용하십시오. 두 경우 모두 'BigDecimal'이 아니라 'double'프리미티브입니다. –
또한 왜'Math.PI' 대신'double pi'를 정의해야합니까? 그리고 왜 BigDecimal.ONE을 사용하는 대신에 새로운 BigDecimal ("1")? –