50,539
社区成员
发帖
与我相关
我的任务
分享
给你一个我自己写的函数
public static double save45As(double value,int num){//四舍五入,考虑了负数的情况
//第一个参数是要保留的浮点值,第二个是保留多少位
boolean minus=false;
if(value<0){value=-value;minus=true;}
String zeroStr="";
for(int i=0;i<num;i++){
zeroStr+="0";
}
zeroStr="1"+zeroStr;
double temp=new Double(zeroStr).doubleValue();
return minus?-1*(double)(Math.round(value*temp)/temp):(double)(Math.round(value*temp)/temp);
}
BigDecimal f2 = new BigDecimal(97.35434);
BigDecimal f3 = f1.add(f2);
f3 = f3.setScale(2,BigDecimal.ROUND_HALF_DOWN);
System.out.println(f3)