プログラミングの用語一覧へ
このページの目次

キャストとは?

読み方:キャスト

最終更新:2026/08/18

3秒でわかる

値をどのとして扱うかを明示し直す操作。整数どうしの割り算で小数が消える、といった型の食い違いによる計算間違いを防ぐために使います。

もう少し詳しく

どういうものか

キャストは、ある型の値を別の型として扱うよう指示する操作です。Java や C では (int) のように型名を括弧で書いて明示します。整数から浮動小数点数へ、あるいは親クラス型の参照を子クラス型へ、といった変換で使います。

言語によっては変換そのものを関数で行い、キャストという語は「型の見方を変えるだけで中身は変換しない」場合に限る、という使い分けもあります。TypeScriptas はこの後者で、実行時には何も起きません。

なぜ必要か

型が合わないまま計算すると、意図しない結果になります。整数どうしの割り算が小数点以下を切り捨てるのはその代表で、割合の計算が常に 0 になるといった不具合につながります。片方を実数として扱い直すことで、期待する計算結果が得られます。

具体例

int total = 7; int count = 2; System.out.println(total / count); // 3 切り捨てられる System.out.println((double) total / count); // 3.5 片方を実数にする double d = 3.9; System.out.println((int) d); // 3 切り捨て。四捨五入ではない Object o = "こんにちは"; String s = (String) o; // <a href="/glossary/reference-type" class="text-primary font-medium underline underline-offset-2 hover:text-primary-dark">参照型</a>のキャスト System.out.println(s.length()); // 5

つまずきやすいところ

大きい型から小さい型へ落とすときに値が壊れます。(int) で小数を切ると端数が消え、(byte) で大きな整数を切ると上位のビットが捨てられて符号まで変わることがあります。丸めたいなら切り捨てではなく丸めの関数を使います。

キャストを書く位置も間違えやすい点です。(double)(total / count) は整数の割り算が終わったあとに変換するので 3.0 のままです。割る前に片方を変換する必要があります。

参照型のキャストは、実際の中身が違えば実行時に例外になります。TypeScript の as はさらに危険で、コンパイラの文句を黙らせるだけで実行時の保証は何もありません。型が合っている確信が無い場所で使うと、undefined を触って落ちます。

覚え方

キャストは「中身を作り変える」のではなく「どの型として見るかを宣言する」操作です。見方を変えても入りきらないものは、こぼれます。

知識のつながり

サイドバーと同じ推奨ルート・関連語を、まとめて確認できます。

現在地キャストプログラミング

LEARN BY DOING

この用語を、教材で使ってみる

直接関連する編と、その編を含むコースです。用語だけで終わらず、ブラウザ上で実際に手を動かせます。

この用語を扱うコース

コース

Java入門:基礎文法編

69レッスン
コース

C言語入門 基礎文法編

66レッスン
コース

TypeScript入門:型を付けて関数を書く

22レッスン
Javaコースの全編を見る