JAvaにおける除算法に対する2桁の小数点を取る試験

969 ワード

以下の手順で、
double a = 12.3333333,b = 11.22222222222;
        double c = 0;
        
        String d = String.format("%.2f", c);
        System.out.println(d+"----------->"+c);
        
        DecimalFormat df = new DecimalFormat("##.00");
        String e = df.format(c);
        System.out.println(e);
        
        double f = (double)Math.round(c*100)/100.0;
        System.out.println(f);

出力結果:
0.00----------->0.0
.00
0.0

1つ目は、私たちが望むフォーマットを残したほうがいいです.
1つ目の方法は、文字列を直接フォーマットし、簡単で便利です.2つ目はdecimalFormatを呼び出して行います.ここではいくつかの注意点があります.##の役割を覚えています.3つ目は四捨五入で作ったもので、ざらざらしていて、
Math.round法はdoubleをlongに変えて、最後にまた除去して、1種の数学の上の方法で、精度はあまり正確ではありません.