回答編集履歴

1

追記の回答

2015/11/19 03:11

投稿

anonymouskawa
anonymouskawa

スコア856

test CHANGED
@@ -9,3 +9,41 @@
9
9
  BigDecimalは、整数と10の-n乗で成り立っていて、整数で計算するので誤差が生じないという仕組みです。
10
10
 
11
11
  floatやdoubleに比べれば処理性能は遅いですが、精度を求めるのであればBigDecimalを使うしかないのです。
12
+
13
+
14
+
15
+ ---
16
+
17
+ 追記の回答
18
+
19
+ 試したコード
20
+
21
+ ```Java
22
+
23
+ public class Aa {
24
+
25
+
26
+
27
+ public static void main(String[] args) {
28
+
29
+ BigDecimal mae = new BigDecimal(1.0);
30
+
31
+ mae.setScale(4, BigDecimal.ROUND_HALF_UP);
32
+
33
+
34
+
35
+ if (BigDecimal.ONE.compareTo(mae) == 0) {
36
+
37
+ System.out.println("one");
38
+
39
+ } else {
40
+
41
+ System.out.println("not");
42
+
43
+ }
44
+
45
+ }
46
+
47
+ }
48
+
49
+ ```