Javaのキャスト【初心者向けにサンプルプログラム付き】

  • このエントリーをはてなブックマークに追加
  • Pocket
javaのcast

Javaでいうところのキャストとはデータ型を変換することだ。特に明示的に変換するときキャストと呼ぶことが多い。

このページではJavaでのキャスト方法についてサンプルプログラム付きでまとめている。

Javaのキャスト方法

ある型から別な型に変換することをJavaでは「型変換」と言う。

型変換には、暗黙的に変換させる方法と、明示的に変換させる方法の2種類があり、後者をキャストと言う。

基本的な使い方

明示的に型変換を行う場合、キャスト演算子を使う。

キャスト演算子は、変換元変数の前に「(変換したい型)」を書くだけだ。

代入する変数 = (キャスト演算子)変換元の変数

これだけだ。非常に簡単だろう。

データ型による違い

キャストには、基本型とクラス型の2種類がある。

基本型

①    long var1 = 1;

②    short var2 = (short)1;

説明

基本型で表現できる範囲は、byte、short、int、long、float、doubleの順に広くなる。

 

①    byte の変数や数値を、intの変数に代入する場合など、範囲を拡大するケースでは、暗黙の型変換が行われるため、キャストは不要である。

 

②    逆に、int の変数や値を、byte の変数に代入する場合など、範囲を縮小するケースでは、キャストが必要となる。

クラス型

①    Object obj1 = new Integer(1);

②    Integer obj2 = (Integer)obj1;

説明

クラス型で表現できる範囲は、サブクラス、スーパークラスの順、または、インタフェース実装クラス、インタフェースの順に限定的になる。

 

①    サブクラスの変数をスーパークラスの変数に代入するなど、範囲が限定的になる場合は、暗黙の型変換が行われるため、キャスト不要である。

 

②    逆に、スーパークラスの変数をサブクラスの変数に代入するなど、範囲が拡大する場合は、キャストが必要となる。

Javaでキャストするサンプルプログラム

それでは実際にサンプルプログラムを確認してみよう。

サンプルコード

実行結果

サンプルプログラムの説明

それでは簡単にプログラムの解説をしてゆこう。

  • [A-1] double var1に、暗黙の型変換により、long型の値「100」を設定する。
  • [A-2] float var2に、var3 をfloat型に変換した値を設定する。
  • [A-3] float var3に、(float)1 ÷ (float)2の演算結果を設定する。
  • [A-4] int var4に、var3をint型に変換した値を設定する。
  • [A-5] var1の値を表示する。
  • [A-6] var2の値を表示する。
  • [A-7] var3の値を表示する。
  • [A-8] var4の値を表示する。
  • [B-1] Dog myDogに、Dogクラスのインスタンスを設定する。
  • [B-2] PetInterface myPetに、暗黙の型変換により、myDogをPetInterfaceに変換して設定する。
  • [B-3] Animal myAnimalに、暗黙の型変換により、myDogをAnimalに変換して設定する。
  • [B-4] Pet myDog1に、myPetをDog型に変換した値を設定する。
  • [B-5] Pet myDog2に、myAnimalをDog型に変換した値を設定する。
  • [B-6] Animal myAnimalのkindを表示する。
  • [B-7] Pet myDog1のnicknameを取得し表示する。
  • [B-8] Pet myDog2のkindを表示する。

まとめ

このページでは、Javaのキャストについてまとめてみた。

クラスのキャストについては、もともとは別々な型を、キャストを利用することで、あたかも同じ型に見せかけて、プログラミングを柔軟に拡張するといったこともできる。

Javaを実践的に使用することになると、かなりの頻度で登場することになるので、ぜひ覚えよう。

  • このエントリーをはてなブックマークに追加
  • Pocket

このページの続きや関連ページは下記から一覧で確認できる。

短期間でエンジニアになる方法

・「まったくの初心者だけどエンジニアになりたい!」

・「プログラマーとして転職をしたい!」

という方はリナックスアカデミーの資料を見てみてください。短期間で未経験からエンジニアになることができるスクールとして15年間選ばれ続けてきた理由やノウハウが載った資料です。

エンジニアの入り口に立つために必要な勉強技術の最新動向本当に使えるIT資格学習に役立つ国からの奨励金などの情報が詰まっています。

無料で2,3日中にお手元にお届けします。


資料を見てみる

SNSでもご購読できます。

コメントを残す

*