首页 > 代码库 > 【java】java.lang.Math:public static long round(double a)和public static int round(float a)

【java】java.lang.Math:public static long round(double a)和public static int round(float a)

技术分享
 1 package math;
 2 
 3 public class TestMath_round {
 4     public static void main(String[] args) {
 5         System.out.println(Math.round(0.5));//1
 6         System.out.println(Math.round(-0.5));//0
 7         System.out.println(Math.round(-0.501));//-1
 8         //Math类的四舍五入方法round进行负数操作时小数位大于0.5才进位,小于等于0.5不进位
 9     }
10 }
View Code

 

技术分享
 1 package math;
 2 
 3 import java.math.BigDecimal;
 4 
 5 class MyRound{
 6     public static double div(double d,int scale){
 7         BigDecimal b1=new BigDecimal(d);
 8         BigDecimal b2=new BigDecimal(1);
 9         return b1.divide(b2, scale, BigDecimal.ROUND_HALF_UP).doubleValue();
10     }
11 }
12 public class TestMath_round {
13     public static void main(String[] args) {
14         System.out.println(Math.round(0.5));//1
15         System.out.println(Math.round(-0.5));//0
16         System.out.println(Math.round(-0.501));//-1
17         //Math类的四舍五入方法round进行负数操作时小数位大于0.5才进位,小于等于0.5不进位
18         System.out.println(MyRound.div(-0.5, 0));//-1.0
19         //改进后为通常的四舍五入。
20     }
21 }
改进后的通常四舍五入

 

【java】java.lang.Math:public static long round(double a)和public static int round(float a)