📜  Java 8 | BigInteger shortValueExact() 方法和示例(1)

📅  最后修改于: 2023-12-03 14:42:12.530000             🧑  作者: Mango

Java 8 | BigInteger shortValueExact() 方法和示例

BigInteger 类是 Java 中处理大整数运算的类,该类提供了许多方法来执行各种运算,包括加减乘除、求幂、求余数等等。其中,shortValueExact() 方法可以将 BigInteger 对象转换为 short 类型,并在转换时进行检查,以确保结果在 short 类型的范围内。

方法签名

下面是 BigInteger shortValueExact() 方法的签名:

public short shortValueExact()

该方法返回该 BigInteger 对象的 short 类型值。

异常

如果该 BigInteger 对象的值超出了 short 类型的范围,则该方法将抛出 ArithmeticException 异常。

示例

下面是使用 shortValueExact() 方法将 BigInteger 对象转换为 short 类型的示例:

import java.math.BigInteger;

public class BigIntegerDemo {
    public static void main(String[] args) {
        BigInteger bigInteger = new BigInteger("32767");
        short shortValue = bigInteger.shortValueExact();
        System.out.println("Short value: " + shortValue);
        
        bigInteger = new BigInteger("32768");
        try {
            shortValue = bigInteger.shortValueExact();
            System.out.println("Short value: " + shortValue);
        } catch (ArithmeticException e) {
            System.out.println(e.getMessage());
        }
    }
}

上面的示例中,首先创建了一个值为 32767 的 BigInteger 对象 bigInteger,并使用 shortValueExact() 方法将其转换为 short 类型,结果为 32767。接着,创建了一个值为 32768 的 BigInteger 对象 bigInteger,由于其超出了 short 类型的范围,因此在将其转换为 short 类型时,抛出了 ArithmeticException 异常,其消息为“BigInteger out of short range”。

上述代码的输出结果如下:

Short value: 32767
BigInteger out of short range