控制資料的小數位數 java / js

做你的貓發表於2018-09-29
//java一般控制格式都是通過 DecimalFormat 來控制的.下邊是個例子.

import java.text.DecimalFormat;
public class ControlBit {
 public static void main(String[] argu){
 double money = 399.74099999999993;
 DecimalFormat df=new DecimalFormat("#.00");
 System.out.println(df.format(money));
 
 }
}
//js中自帶方法控制小數點的顯示位數

< script language = " JScript " > Number.prototype.toFixed = function(num) {
   
// 重新構造toFixed方法,IE5.0+ 
  with(Math) this .NO = round( this .valueOf() * pow( 10 ,num)) / pow( 10 ,num);
  return  String( / /. / g.exec( this .NO) ? this .NO: this .NO + " . " + String(Math.pow( 10 ,num)).substr( 1 ,num));

}
alert(( 12.9299 ).toFixed( 2 ));
alert(( 12.9999 ).toFixed( 2 )); 

</ script >   

--------------------- 本文來自 生活真美好 的CSDN 部落格 ,全文地址請點選:https://blog.csdn.net/wyzsc/article/details/6253255?utm_source=copy

 

4種方法,都是四捨五入,例:

    import java.math.BigDecimal;
    import java.text.DecimalFormat;
    import java.text.NumberFormat;
    public class format {
        double f = 111231.5585;
        public void m1() {
            BigDecimal bg = new BigDecimal(f);
            double f1 = bg.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
            System.out.println(f1);
        }
        /**
         * DecimalFormat轉換最簡便
         */
        public void m2() {
            DecimalFormat df = new DecimalFormat("#.00");
            System.out.println(df.format(f));
        }
        /**
         * String.format列印最簡便
         */
        public void m3() {
            System.out.println(String.format("%.2f", f));
        }
        public void m4() {
            NumberFormat nf = NumberFormat.getNumberInstance();
            nf.setMaximumFractionDigits(2);
            System.out.println(nf.format(f));
        }
        public static void main(String[] args) {
            format f = new format();
            f.m1();
            f.m2();
            f.m3();
            f.m4();
        }
    }
//還有一種直接向上取整數
<H2 class="title content-title">//java:Java的取整函式</H2>    <DIV id=content class="content mod-cs-content text-content clearfix"> //Math.floor()、Math.ceil()、BigDecimal都是Java中的取整函式,但返回值卻不一樣
            
            Math.floor()
            通過該函式計算後的返回值是捨去小數點後的數值
            如:Math.floor(3.2)返回3
            Math.floor(3.9)返回3
            Math.floor(3.0)返回3
            
            Math.ceil()
            ceil函式只要小數點非0,將返回整數部分+1
            如:Math.ceil(3.2)返回4
            Math.ceil(3.9)返回4
            Math.ceil(3.0)返回3 </DIV>

 

相關文章