明示的型変換(キャスト)

明示的型変換(キャスト)とは、明示的にデータ型を指定して型変換すること。

boolean型(論理型)は、変換できない。

boolean型(論理型)以外のデータ型は、boolean型(論理型)以外のどのデータ型へも変換できる。

構文

1
( データ型 )

式の型を、データ型に指定した型に変換する。

byte型に変換する例

1
( byte )int型変数
1
( byte )( int型変数 + short型変数 )

float型に変換する例

1
( float )int型変数
1
( float )( int型変数 + short型変数 )

サンプル

SampleClass.java

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
package samplePackage;

public class SampleClass {

    public static void main( String[] args ){

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

        // int型変数をbyte型に変換し、byte型変数に代入。
        byte $byte = ( byte )$int;

        // float型変数に「1.23」を代入。
        float $float = 1.23F;

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

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

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

    }

}

実行結果

short型変数$shortの値は、「200」である。
int型変数$intBの値は、「101」である。
double型変数$doubleの値は、「101.2300033569336」である。