gpt4 book ai didi

java - Java中如何获取BigInteger的精度

转载 作者:行者123 更新时间:2023-12-02 04:38:20 29 4
gpt4 key购买 nike

我正在我的 Web 应用程序中实现一个自定义 validator ,它可以验证 bean 的 BigInteger 属性。此属性映射到 Oracle 表的 Number(8, 0) 类型。

BigDecimal 一样,我没有看到可以返回给定数字精度的 BigInteger 方法。

基本上,我首先将 BigInteger 值转换为 BigDecimal 以获得其精度,如下所示(仅用于演示)。

int minPrecision=1;
int maxPrecision=8;

BigInteger bigInteger=new BigInteger("12345");
BigDecimal bigDecimal=new BigDecimal(bigInteger, 0);

int precision=bigDecimal.precision();
boolean isValid=precision>=minPrecision && precision<=maxPrecision;

System.out.println(isValid+" : "+precision);

BigInteger 是否提供了返回其值精度的精确方法?

最佳答案

BigInteger 上没有精度方法,因为精度的概念对于 Integer 来说没有意义。 BigInteger 表示任意大小的整数,与 BigDecimal 不同,后者表示 float 的精确十进制表示形式,因此具有关联的精度。

关于java - Java中如何获取BigInteger的精度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15677518/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com