我的目标是在通过 Scanner 类输入 BigDecimal 值时存储它们。我想将 BigDecimal 数字存储到一个数组中,以便我可以按数字对它们进行排序。这可以使用一维数组来完成吗?
我找不到任何为此任务设计的 BigInteger 方法。我想要 BigDecimal 值,因为小数精度对我来说很重要。
如果要轻松对它们进行排序,可以执行以下操作:
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()
使用合并排序。
我希望这对你有所帮助,
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