005-Javaの基本-キャスト 【新人エンジニアが最初に覚えたい100のJava文法】
ユーチューブ動画
キャストについて解説します。
ソースコード
public class ExampleCast { public static void main(String[] args) { int price = 1250; double tax = 8.0; int total = (int) (price * (100 + tax) / 100); System.out.println("total:" + total); } }
解説
プログラムで変数を扱うとき、データ型が必要になります。
しかし、処理を考えていく中で、どうしてもデータ型を変えなければ、つじつまが合わなくなるときがあります。
そこでキャストを使います。キャストを使うとデータ型を変換することができます。
Javaには暗黙的キャストと明示的キャストがあります。
=の左側のデータ型が大きい場合には、暗黙的キャストが働き、データ型が自動的に拡張されます。
一方、明示的キャストは、変換する型を()の中に記述し、データ型を明示します。
サンプルコードを確認してください。
変数taxは、double型です。
Javaでは、大きいデータ型と小さなデータ型を演算すると、大きなデータ型に変換されるという性質があるので、
=の右側はdouble型になります。
一方、=の左側はint型です。
Int型とdouble側ではdouble型の方が大きなデータ型になるので、暗黙的キャストが働かず、ご覧のようにコンパイルエラーになります。
そこで型を変換するキャストが登場します。
やり方は簡単です。
キャスト演算子といって、変換したい型をカッコの中に記述するだけになります。
ここではint型に変換したいので、(int)と記述します。
残念ながら、これでは変数priceだけしかキャストが働きませんので、式全体にカッコをつけます。
これで式全体がdouble型からint型に変換されることになります。
カッコの中にデータ型を記述しているのを見かけたら、型を変換するキャストと覚えておきましょう。
以上、キャストについて解説しました。
このサンプルコードをJavaタッチタイプゲームとして遊ぶことができまhttps://saycon.co.jp/touchtype/す。
投稿者プロフィール
-
セイ・コンサルティング・グループ株式会社代表取締役。
岐阜県出身。
2000年創業、2004年会社設立。
IT企業向け人材育成研修歴業界歴20年以上。
すべての無駄を省いた費用対効果の高い「筋肉質」な研修を提供します!
この記事に間違い等ありましたらぜひお知らせください。
最新の投稿
- 全ての社員2024年11月26日IT技術者にとってプロセスマイニングとは?
- 全ての社員2024年11月26日NTTが提唱している「IOWN(アイオン)」というコンセプトについて
- 新人エンジニア研修講師2024年11月26日研修のアンケート評価がなぜ悪くなるのか 認知的不協和で考える
- 全ての社員2024年11月26日「アドレナリン」と「ノルアドレナリン」の違い