比如 double a = 3.00111111而我只想截取小数点后四位,该如何做啊?

解决方案 »

  1.   

    用index取得小数点'.'的位置
    然后用substring截取4位
      

  2.   


    用java.text.NumberFormat类,NumberFormat nFormat=NumberFormat.getNumberInstance();nFormat.setMaximumFractionDigits(5);//设置小数点后面尾数为System.out.println("Format Out 3.2128345="+nFormat.format(3.2128345));
    输出的结果就是:
           Format Out 3.2128345=003.2128
       
      

  3.   

    用java.text.NumberFormat类, NumberFormat nFormat=NumberFormat.getNumberInstance(); nFormat.setMaximumFractionDigits(4);//设置小数点后面尾数为4位小数System.out.println("Format Out 3.2128345="+nFormat.format(3.2128345)); 
    输出的结果就是: 
          Format Out 3.2128345=003.2128 
      

  4.   


      double a = 3.00111111 ;
      DecimalFormat format = new DecimalFormat("#.0000");
      System.out.println(format.format(a));
      

  5.   

    不多说,看程序.import java.text.DecimalFormat;public class FormaterTest {
        public static void main(String[] args) {
            double a = 3.00001111 ;
            DecimalFormat format1 = new DecimalFormat("#.####");//保留后四位,0不输出。
            DecimalFormat format2 = new DecimalFormat("#.0000");//保留后四位,0输出。
            System.out.println(format1.format(a));
            System.out.println(format2.format(a));
        }
    }
    输出如下13
    13.0000