基本データ型 BigInteger
Javaの基本データ型は8つ種類があります。また、Javaの基本データ型のbitサイズは環境に依存しません。
以下がJavaの基本データ型になります。

基本データ型
基本データ型

特にbitサイズなどを覚える必要はないと思いますが、基本データ型の暗黙の型変換を行う場合は「拡大変換」となります。
拡大変換とは、bitサイズが大きい型に、bitサイズが小さい型を代入することができ、この時の暗黙の型変換のことを指します。

基本データ型のラッパークラス
基本データ型のラッパークラスとは、オブジェクトではない基本データ型を、オブジェクトとして扱うことを可能にするクラスです。
基本データ型のそれぞれのラッパークラスは以下のとおりです。
基本データ型のラッパークラス
基本データ型のラッパークラス

Long型の最大桁数とBigInteger型
Long型は最大桁数は19桁のようです。以下、サンプルです。

package purejava;

public class Sample {

    public static void main(String[] args) {
        Long i = new Long("1234567890123456789");
        Long j = new Long("12345678901234567890");
    }

}
サンプルを実行するとNumberFormatExceptionが発生します。20桁の数字を指定しているためです。

Exception in thread "main" java.lang.NumberFormatException: For input string: "12345678901234567890"
    at java.lang.NumberFormatException.forInputString(Unknown Source)
    at java.lang.Long.parseLong(Unknown Source)
    at java.lang.Long.<init>(Unknown Source)
    at purejava.Sample.main(Sample.java:7)

20桁以上を指定する恐れがある場合はBigInteger型を使用します。

package purejava;

import java.math.BigInteger;

public class Sample {

	public static void main(String[] args) {
		Long i = new Long("1234567890123456789");
		BigInteger j = new BigInteger("12345678901234567890");
	}

}

Back to top

Information