Java-math-bigdecimal-longvalueexact

提供:Dev Guides
移動先:案内検索

Java.math.BigDecimal.longValueExact()メソッド

説明

  • java.math.BigDecimal.longValueExact()**は、このBigDecimalを長い情報に変換し、失われた情報をチェックします。 このBigDecimalにゼロ以外の小数部がある場合、または長い結果の範囲外である場合、ArithmeticExceptionがスローされます。

宣言

以下は、* java.math.BigDecimal.longValueExact()*メソッドの宣言です。

public long longValueExact()

パラメーター

NA

戻り値

このメソッドは、BigDecimalオブジェクトのlong値を返します。

例外

*ArithmeticException* -これにゼロ以外の小数部がある場合、またはlongに収まらない場合。

次の例は、math.BigDecimal.longValueExact()メソッドの使用法を示しています。

package com.finddevguides;

import java.math.*;

public class BigDecimalDemo {

   public static void main(String[] args) {

     //create 2 BigDecimal objects
      BigDecimal bg1, bg2;

     //create 2 long objecs
      long l1,l2;

      bg1 = new BigDecimal("-429");
      bg2 = new BigDecimal("3.3E+10");

     //assign the long value of bg1 and bg2 to l1,l2 respectively
      l1 = bg1.longValueExact();
      l2 = bg2.longValueExact();

      String str1 = "Exact Long value of " + bg1 + " is " + l1;
      String str2 = "Exact Long value of " + bg2 + " is " + l2;

     //print l1,l2 values
      System.out.println( str1 );
      System.out.println( str2 );
   }
}

上記のプログラムをコンパイルして実行すると、次の結果が生成されます-

Exact Long value of -429 is -429
Exact Long value of 3.3E+10 is 33000000000