Java.math.BigDecimal.intValueExact() 方法

描述

java.math.BigDecimal.intValueExact()将此 BigDecimal 转换为 int,检查丢失的信息。 如果此 BigDecimal 具有非零小数部分或超出 int 结果的可能范围,则会引发 ArithmeticException。


声明

以下是 java.math.BigDecimal.intValueExact() 方法的声明。

public int intValueExact()

参数

NA


返回值

该方法返回 BigDecimal 对象的 int 值。


异常

ArithmeticException − 如果这有一个非零小数部分,或者不适合 int。


示例

下面的例子展示了 math.BigDecimal.intValueExact() 方法的使用。

package com.tutorialspoint;

import java.math.*;

public class BigDecimalDemo {

   public static void main(String[] args) {

      // create 2 BigDecimal objects
      BigDecimal bg1, bg2;

      //Create two int Object
      int i1, i2;

      bg1 = new BigDecimal("40");
      bg2 = new BigDecimal("4E+1");

      // assign the exact int value of bg1 and bg2 to i1,i2 respectively
      i1 = bg1.intValueExact();
      i2 = bg2.intValueExact();

      String str1 = "Exact int value of " + bg1 + " is " + i1;
      String str2 = "Exact int value of " + bg2 + " is " + i2;

      // print i1,i2 values
      System.out.println( str1 );
      System.out.println( str2 );
   }
}

让我们编译并运行上面的程序,这将产生下面的结果 −

Exact int value of 40 is 40
Exact int value of 4E+1 is 40