BigIntegerBeanのプロパティを検証できるカスタム バリデーターを Web アプリケーションに実装しています。Number(8, 0)このプロパティは、Oracle テーブルのタイプにマップされます。
のように、指定された数値の精度を返すことができる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その値の精度を返す正確な方法を提供しますか?