今回はJavaの0Lの役割について解説します。

0Lとは何か

例えば下記のコードがあったとします。

public class Main {
    public static void main(String[] args) {
        int number1 = 0;

        long number2 = 0L;

        System.out.println(number1);
        System.out.println(number2);
    }
}

7行目・8行目は共に「0」を出力しますが型が異なり下記になります。

7行目の0 : int型
8行目の0L : long型

int型・long型は共に整数を扱いますが扱える数の範囲が異なります。

データ型	           扱える数値の範囲
int	           -2,147,483,648 ~ 2,147,483,647
long	         -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807

long型はint型よりも大きな整数を扱うことが可能になります。

どういう時に使うか

例えば下記のコードの様にオブジェクトを生成する場合を考えます。

idはカラムの値で自動採番するとします。

class DemoClass {
    private long id;

    public Demo(long id) {
        this.id = id;
    }

    public long getId() {
        return id;
    }
}

public class Main {
    public static void main(String[] args) {
        Demo demoData = new Demo(0L);

        System.out.println(demoData.getId());
    }
}

10行目で0Lを設定していますが今の時点では値がないけど後で自動採番で値を登録するなどの場合にとりあえず仮で値を使う為に0Lを設定する場合に使います。