是否无法将BigDecimal值存储在一维数组中

时间:2013-11-16 00:19:37

标签: java arrays sorting precision bigdecimal

我的目标是存储BigDecimal值,因为我通过Scanner类输入它们。我想将BigDecimal数字存储到一个数组中,以便我可以用数字对它们进行排序。这可以使用一维数组来完成吗?

我找不到为此任务设计的任何BigInteger方法。我想要BigDecimal值,因为小数精度对我很重要。

2 个答案:

答案 0 :(得分:1)

如果您想轻松排序,可以执行以下操作:

    BigDecimal x1 = new BigDecimal("1235.2345");
    BigDecimal x2 = new BigDecimal("235.2345");
    BigDecimal[] nums = {x1,x2};
    List<BigDecimal> lnums = Arrays.asList(nums);
    Collections.sort(lnums);

Arrays.asList()仅传递数组引用的值。 Collections.sort()使用合并排序。

答案 1 :(得分:0)

我希望这能帮到你,

BigDecimal x = new BigDecimal(5.94839);
BigDecimal y = new BigDecimal(9.03937);
BigDecimal[] myBDArr = {x,y};
System.out.println(myBDArr[0]);
System.out.println(myBDArr[1]);

<强>输出:

5.948389999999999844249032321386039257049560546875
9.0393699999999999050714905024506151676177978515625