代入時のプリミティブ型変換

変数の型と代入する値の型が異なる場合、代入する値の型を、変数の型に自動変換する。
ただし、大きい型から小さい型へは変換しない。

代入時のプリミティブ型変換ルール表

プリミティブ型 変換できるプリミティブ型
boolean型(論理型) 変換できない
char型 int型long型float型double型
byte型 short型int型long型float型double型
short型 int型long型float型double型
int型 long型float型double型
long型 float型double型
float型 double型
double型 変換できない

int型に自動変換する例

1
int型変数 = byte型変数
1
int型変数 = short型変数

float型に自動変換する例

1
float型変数 = byte型変数
1
float型変数 = int型変数

サンプル

SampleClass.java

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
package samplePackage;

public class SampleClass {

    public static void main( String[] args ){

        // byte型変数に「100」を代入。
        byte $byte = 100;

        // int型変数にbyte型変数の値を代入。
        int $int = $byte;
        System.out.println( "変数$intの値は、「" + $int + "」である。" );

        // float型変数にint型変数の値を代入。
        float $float = $int;
        System.out.println( "変数$floatの値は、「" + $float + "」である。" );

    }

}

実行結果

変数$intの値は、「100」である。
変数$floatの値は、「100.0」である。