代码改变世界

java四舍五入

2012-08-07 17:51  Patrick.Lee  阅读(461)  评论(0编辑  收藏  举报
 
java四舍五入
package Test;
import java.math.BigDecimal; //引入这个包
public class Test {
  public static void main(String[] args) {
   double i = 3.856;
   // 舍掉小数取整
   System.out.println("舍掉小数取整:Math.floor(3.856)=" + (int) Math.floor(i));
   // 四舍五入取整
   System.out.println("四舍五入取整:(3.856)="  + new BigDecimal(i).setScale(0,BigDecimal.ROUND_HALF_UP));
   // 四舍五入保留两位小数
   System.out.println("四舍五入取整:(3.856)="  + new BigDecimal(i).setScale(2,BigDecimal.ROUND_HALF_UP));
   // 凑整,取上限
   System.out.println("凑整:Math.ceil(3.856)=" + (int) Math.ceil(i));
   // 舍掉小数取整
   System.out.println("舍掉小数取整:Math.floor(-3.856)=" + (int) Math.floor(-i));
   // 四舍五入取整
   System.out.println("四舍五入取整:(-3.856)="  + new BigDecimal(-i).setScale(0,BigDecimal.ROUND_HALF_UP));
   // 四舍五入保留两位小数
   System.out.println("四舍五入取整:(-3.856)=" + new BigDecimal(-i).setScale(2, BigDecimal.ROUND_HALF_UP));
   // 凑整,取上限
   System.out.println("凑整(-3.856)=" + (int) Math.ceil(-i));
  }
}


//打印的结果
舍掉小数取整:Math.floor(3.856)=3
四舍五入取整:(3.856)=4
四舍五入取整:(3.856)=3.86
凑整:Math.ceil(3.856)=4
舍掉小数取整:Math.floor(-3.856)=-4
四舍五入取整:(-3.856)=-4
四舍五入取整:(-3.856)=-3.86
凑整(-3.856)=-3