我的 Java println
语句中有以下代码行:
System.out.println("Iteration: " + counter + "\tRoot: " +
new BigDecimal(x_iter).setScale(2, RoundingMode.HALF_UP).doubleValue());
但我不断收到此错误,但我不知道为什么:
nth_root.java:26: error: cannot find symbol
new BigDecimal(x_iter).setScale(2, RoundingMode.HALF_UP).doubleValue()
^
symbol: variable RoundingMode
location: class nth_root
nth_root.java:26: error: cannot find symbol
new BigDecimal(x_iter).setScale(2, RoundingMode.HALF_UP).doubleValue()
^
symbol: class BigDecimal
location: class nth_root
2 errors
在使用 BigDecimal 之前是否需要导入一个库?我缺少什么?请注意,我的 Java 版本是:
java version "1.8.0_05"
Java(TM) SE Runtime Environment (build 1.8.0_05-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.5-b02, mixed mode)
最佳答案
编译器说“找不到符号”,因为它不知道 RoundingMode
和 BigDecimal
是什么。您需要通过从 java.math
库导入 RoundingMode
和 BigDecimal
来告诉它:
import java.math.RoundingMode;
import java.math.BigDecimal;
或者导入 java.math
中的所有类:
import java.math.*;
关于Java:RoundingMode 错误 - 找不到符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27090038/