2016-10-18 6 views
1
import java.math.*; 

class Moqueet { 
    public static void main(String [] args){ 
     double a, b, c; 
     BigDecimal bg1, bg2; 
     a = 1; 
     b = 10000; 
     c = a/b; 
     bg1 = new BigDecimal(c); 
     MathContext mc = new MathContext(10); 
     bg2 = bg1.round(mc); 
     System.out.println(bg1); 
    } 
    } 

私はこれをしようとすると、私は次のように出力を得る:私は私のうちにのみ0.0001として入れJavaでBigDecimalをスケールする方法は?

0.000100000000000000004792173602385929598312941379845142364501953125 

たい。どのように私はこれを達成することができますか?

+3

http://stackoverflow.com/questions/15643280/rounding-bigdecimal-to-always-have-two-decimal-places「スケーリング」と「丸め」とは、2つの異なるものであることを – Ricardo

+0

注意。ここで丸めたいだけです。また、 'bg1'を表示し、' bg2'を無視していることにも注意してください。 –

答えて

0
bg1 = bg1.setScale(4, RoundingMode.FLOOR); 
関連する問題