Javaのキャスト(型変換)について現役エンジニアが解説【初心者向け】
初心者向けにJavaのキャスト(型変換)について解説しています。型の変換を行うことをキャストをいいます。int型からlong型といった変換や、文字列と数値の変換などさまざまなキャストの方法について学びましょう。
テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日 調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名 調査手法:インターネット調査
Javaのキャスト(型変換)について解説します。実際にプログラムを書いて説明しているので、ぜひ理解しておきましょう。
そもそもJavaについてよく分からないという方は、Javaとは何なのか解説した記事を読むとさらに理解が深まります。
なお本記事は、TechAcademyのオンラインブートキャンプJava講座の内容をもとに作成しています。

今回は、Javaに関する内容だね!

どういう内容でしょうか?

キャスト(型変換)について詳しく説明していくね!

お願いします!
キャスト(型変換)とは
キャストとは変数の型変換を行うことを言います。例えば-2147483648~2147483647の数値情報を格納することができるint型と-9223372036854775808~9223372036854775807の数値情報を格納することができるlong型があります。
はじめint型として定義していた変数をlong型に変換したり、逆にlong型の変数をにint型変換することができます。
Javaのキャスト(型変換)
Javaでは領域が小さい型から大きい型へ変換する場合は、単に代入を行うだけで自動的に型の変換が行われます。
例えば下記のような場合です。
int i = 3; long l = i; //自動的に型変換が行われる
これを明示的に型指定する場合はキャスト演算子を使って下記のように記述します。
int i = 3; long l = (long)i;
(データ型)式 というように括弧でデータ型を指定します。
long l = (long)i;
では、long型への代入が行われていますが、代入を行う前の右辺
(long)i;
の状態で既にlong型への変換が行われています。
[PR] Javaプログラミングで挫折しない学習方法を動画で公開中
数値型から文字型へのキャスト
数値型から文字型へ変換する方法を2種類紹介します。
ひとつめはStringクラスのvalueOf()メソッドを使う方法です。引数に指定した数値をString型に変換して返却します。
ふたつめは+演算子を使って数値に空文字を連結する方法です。+演算子を使うと、数値+数値の場合は普通の足し算として実行されますが、数値+文字列の場合は数値は文字列に置き換えられてから連結されます。
数値の後に空文字を連結することで、数値が文字列に置き換わるのと同等の状態となります。
文字型から数値型へのキャスト
文字型から数値型へ変換する場合は、IntegerクラスのメソッドであるperseInt()を使います。尚、
- 数値型がshortの場合はShortクラスのparseShort()メソッド
- byte型の場合はByteクラスのparseByte()メソッド
long型の場合はlongクラスのparseLong()メソッド
をそれぞれ使う事ができます。
実は私も!?独学で損する人の特徴
「スクールは高いから独学で成功する」という気持ちの方は多いと思います。
もちろんその方が金額は低く抑えられるでしょう。
ただ
独学には向き不向きがあり、実はスクールが向いている人も大勢います。
そんな方のために参考として、
テックアカデミー卒業生がスクールを選んだ理由
をご紹介します。
- ・困って挫折しそうなときに、質問や相談できる相手がいる環境で学んでいきたいなと思った
- ・わかった気になっているだけだったので、自分を追い込む環境に置いた方がいいと感じた
- ・スクールのカリキュラムで市場に求められるスキルを学ぶべきと思った

少しでも当てはまる部分があれば、
スクールが向いているかもしれません。
お試しのつもりで、まずは一度
無料相談
に参加してみませんか?
現役エンジニア・デザイナーに何でも気軽に相談できる30分
を
すべて無料で
できます。
無理な勧誘は一切ない
ので、お気軽にご参加ください。
実際に書いてみよう
int型をString型に変換、またString型をint型およびlong型へ変換するプログラムを実装します。
public class Sample{ public static void main(String[] args) { int i = 3; // StringクラスのvalueOfメソッドを使って変換する String str1 = String.valueOf(i); // 空文字を足し算して変換する String str2 = "" + i; //String型からint型への変換 int ii = Integer.parseInt(str1); //String型からlong型への変換 long ll = Long.parseLong(str2); } }
コンパイルエラーなく実行できれば成功です。
監修してくれたメンター
長屋雅美
独立系SIerで7年勤務後、現在はフリーのエンジニアとして自宅をオフィスとして活動しています。 |

内容分かりやすくて良かったです!

ゆかりちゃんも分からないことがあったら質問してね!

分かりました。ありがとうございます!
TechAcademyでは、初心者でもJavaやServletの技術を使ってWebアプリケーション開発を習得できるオンラインブートキャンプJava講座を開催しています。
挫折しない学習方法を知れる説明動画や、現役エンジニアとのビデオ通話とチャットサポート、学習用カリキュラムを体験できる無料体験も実施しているので、ぜひ参加してみてください。

プログラミングを独学していて、このように感じた経験はないでしょうか?
- ・調べてもほしい情報が見つからない
- ・独学のスキルが実際の業務で通用するのか不安
- ・目標への学習プランがわからず、迷子になりそう
テックアカデミーでは、このような
学習に不安を抱えている方へ、現役エンジニア講師とマンツーマンで相談できる機会を無料で提供
しています。
30分間、オンラインでどんなことでも質問し放題です。
「受けてよかった」と感じていただけるよう
厳しい試験を通過した講師
があなたの相談に真摯に向き合います。
「ただ気になることを相談したい」
「漠然としているがプロの話を聞いてみたい」
こんな気持ちでも大丈夫です。
無理な勧誘は一切ありません
ので、まずはお気軽にご参加ください。
※体験用のカリキュラムも無料で配布いたします。(1週間限定)