Java:RoundingMode 错误 - 找不到符号

标签 java

我的 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)

最佳答案

编译器说“找不到符号”,因为它不知道 RoundingModeBigDecimal 是什么。您需要通过从 java.math 库导入 RoundingModeBigDecimal 来告诉它:

import java.math.RoundingMode;
import java.math.BigDecimal;

或者导入 java.math 中的所有类:

import java.math.*;

关于Java:RoundingMode 错误 - 找不到符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27090038/

相关文章:

java - Java 对象序列化问题

java - NetBeans 7.1 构建错误 : java. lang.UnsatisfiedLinkError libXtst.so.6: 错误的 ELF 类:ELFCLASS64

java - ObjectMapper 无法处理具有遗留枚举(类)的映射对象

java - 来自 .html 的请求中的空参数列表将多部分/表单数据表单发布到 servlet 2.5 或 3.0

java - Spring 安全: public API to register new user

java - 如果所有对象都返回 false,如何触发某些内容

java - Spring @Autowired 用于 setter 方法与非 setter 方法

java - 发送 GET 方法而不是 DELETE

java - Jooq 不支持 Spring 事务

java - 用于 Java Web 应用程序的可嵌入消息传递组件