看错了,是java.text.DecimalFormat
解决方案 »
- 知道问题所在,不知为什么,请问怎么改?
- JNDI是什么?
- char字节问题
- 日期排序的问题
- 我设计的一个计算器,截取字符串的时候出现错误,求帮助
- 一个查询问题
- JPanel作为绘图组件的重绘问题!高手请进!
- 如何根据数据库中的返回值来设置JRadioButton的boolean??
- 连接Oracle错误: java.sql.SQLException: Io 异常: Connection refused(DESCRIPTION=(TMP=)(VSNNUM=153092352)(ERR=12505)(ERROR_STACK=
- 请教高手,线程里面的东西运行完了之后其占用的资源会自动被java自动回收吗,我怎么看到我的2000里面有几百个进程的!!!!
- 在类中,有没有在load class之前就可以执行的代码?
- 用eclipse编译运行程序时提示错误!哪位朋友帮忙看一下!!
double d = 123.356;
long l = Math.round(d*Math.pow(10,temp));
double result = l/Math.pow(10,temp);
System.out.println(result);
double f = 33.32764;d = (new BigDecimal(d).setScale(2, BigDecimal.ROUND_HALF_UP)).doubleValue();
f = (new BigDecimal(f).setScale(2, BigDecimal.ROUND_HALF_UP)).doubleValue();试试这样吧,用BigDecimal来实现代价很低(方便).BTW,给你做了一个example:
import java.math.BigDecimal;
public class Test {
public static void main(String[] args) {
double d = 44.32212;
double f = 33.32764;
d = (new BigDecimal(d).setScale(2, BigDecimal.ROUND_HALF_UP)).doubleValue();
f = (new BigDecimal(f).setScale(2, BigDecimal.ROUND_HALF_UP)).doubleValue();
System.out.println(d);
System.out.println(f);
}
}
运行结果:
[aries@aries aries]$ java Test
44.32
33.33
符合你的要求.
java.math.BigDecimal已经为你实现了四舍五入的功能.