java中保留两位小数并要求四舍五入的方法
本来我是会的,可是居然被要求不能用Mathclass,Formatterclass,DecimalFormatclass或其它任何class可以帮助format的…………...
本来我是会的,可是居然被要求不能用Math class, Formatter class, DecimalFormat class或其它任何class可以帮助format的…………彻底无语,这样叫我怎么做啊~~~那位java高手可以来帮帮我啊TAT~~谢谢了
楼下的答案我没看懂怎么回事啊……主要是那个判断……………… 展开
楼下的答案我没看懂怎么回事啊……主要是那个判断……………… 展开
展开全部
double d=2.345;
//格式化为String
String str=String.format("%.2f",d);
System.out.println(str);
//如果需要数字,可以再d = Double.parseDouble(str)
//////////////
BigDecimal bd=new BigDecimal("2.345");//建议使用String参数
BigDecimal bd_half_even = bd.setScale(2,RoundingMode.HALF_EVEN);
BigDecimal bd_half_up = bd.setScale(2,RoundingMode.HALF_UP);
System.out.println(bd_half_even);
System.out.println(bd_half_up);
//HALF_EVEN,HALF_UP是两种不同的四舍五入机制
//BigDecimal默认使用HALF_EVEN
//HALF_UP的效果就是经典的四舍五入
//HALF_EVEN是最科学的四舍五入,但结果和HALF_UP可能会不同
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询