
Java道|4章のまとめ
演算子と型のルールがつながると、Javaの式は「なんとなく」から「理由を持って」読めるようになる。
4章では、Javaで計算や代入を行うために欠かせない、式・演算子・型変換について学んできました。
最初は、足し算や掛け算のような基本的な計算から始まりました。そこから、変数を使った計算、入力値を使った処理、インクリメント・デクリメント、複合代入演算子、演算子の優先順位、型変換、キャスト、異なる型どうしの演算へと進んできました。
一つひとつを見ると細かいルールに感じるかもしれません。けれど、これらはすべて「Javaの式をどう読むか」「値がどのように計算されるか」「結果がどの型として扱われるか」という大きなテーマにつながっています。
鬼滅の刃風にたとえると、4章は「Javaの呼吸の基礎訓練」です。演算子は技、オペランドは技を受ける値、式は技の型、型変換は呼吸の流派を切り替える動きのようなものです。どの技を先に出すか、どの型で力を扱うかを理解できると、Javaのコードをずっと落ち着いて読めるようになります。この記事では、具体的なサンプルプログラムは出さず、4章で学んだ内容を整理して振り返ります。
演算子はオペランドと組み合わせて式を作る
4章の出発点は、式と演算子でした。
Javaでは、値や変数に対して計算や代入などの処理を行うために、演算子を使います。
たとえば、次のような式があります。
1 + 2この場合、+ が演算子です。
そして、1 と 2 がオペランドです。
| 要素 | 意味 | 例 |
|---|---|---|
| 演算子 | 計算や代入などを行う記号 | +、-、*、/、= |
| オペランド | 演算の対象になる値や変数 | 1、2、num |
| 式 | 評価されると値になるもの | 1 + 2、num + 5 |
式は、ただ記号が並んでいるだけではありません。
Javaがその式を評価すると、結果として値が得られます。
たとえば、1 + 2 は評価されると 3 になります。
鬼滅の刃風にたとえると、演算子は「技の型」、オペランドは「技をかける対象」です。
1 + 2 は、1 と 2 に対して + の型を使い、3 という結果を生み出す流れです。
変数を使うと式は実践的になる
式では、数値を直接書くだけでなく、変数も使えます。
たとえば、num1 と num2 という変数がある場合、その2つの値を使って合計を求められます。
| 式の考え方 | 内容 |
|---|---|
| num1 + num2 | num1 と num2 の値を足す |
| sum = num1 + num2 | 足した結果を sum に代入する |
| num = num + 1 | num の現在値に 1 を足して更新する |
変数を使えるようになると、プログラムは一気に実践的になります。
決まった数値だけを計算するのではなく、変数に入っている値に応じて結果を変えられるからです。
たとえば、合計を求める、回数を数える、残り数を減らす、点数を更新する、といった処理は、ほとんどが変数を使った演算です。
鬼滅の刃風にたとえると、変数は「隊士が持っている現在の力」です。
その力に修行成果を足したり、消耗分を引いたりすることで、状態を更新していきます。
入力値を使うと結果が変わるプログラムになる
4章では、キーボードから入力した値を使って計算する考え方も学びました。
入力値を使うと、実行するたびに結果が変わるプログラムを作れます。
| 手順 | 内容 |
|---|---|
| 1 | キーボードから値を入力する |
| 2 | 入力値を変数に入れる |
| 3 | その変数を式で使う |
| 4 | 計算結果を表示する |
これは、とても大きな一歩です。
コードに直接書いた値だけを使う場合、結果は毎回同じになります。
しかし、入力値を変数に入れて式で使うと、ユーザーの入力によって結果が変わります。
つまり、Javaのプログラムが「固定された処理」から「状況に応じて動く処理」へ変わります。
鬼滅の刃風にたとえると、敵の強さや任務の条件をその場で受け取り、それに応じて技の威力や作戦を変えるようなものです。
インクリメント・デクリメント演算子で1ずつ増減できる
4章では、インクリメント演算子とデクリメント演算子も学びました。
| 演算子 | 意味 |
|---|---|
| ++ | 値を 1 増やす |
| -- | 値を 1 減らす |
たとえば、count++ は、count の値を 1 増やす処理です。
これは、次の考え方と同じです。
| 短い書き方 | 通常の考え方 |
|---|---|
| count++ | count = count + 1 |
| count-- | count = count - 1 |
インクリメントとデクリメントは、回数を数えたり、残り数を減らしたり、繰り返し処理で変数を更新したりするときによく使います。
特に大切なのは、前置と後置の違いです。
| 書き方 | 意味 |
|---|---|
| ++a | 先に 1 増やしてから使う |
| a++ | 使ってから 1 増やす |
| --a | 先に 1 減らしてから使う |
| a-- | 使ってから 1 減らす |
単独で使う場合は、前置でも後置でも最終的な値は同じです。
しかし、代入や他の式と組み合わせると、結果が変わることがあります。
鬼滅の刃風にたとえると、前置は「呼吸を高めてから技を出す」、後置は「今の状態で技を出してから呼吸が高まる」という違いです。
複合代入演算子を使うと処理を簡潔に書ける
4章では、= だけでなく、+= や -= などの複合代入演算子も学びました。
複合代入演算子は、演算と代入をまとめて書ける便利な演算子です。
| 複合代入演算子 | 通常の書き方 | 意味 |
|---|---|---|
| a += b | a = a + b | a に b を足して代入する |
| a -= b | a = a - b | a から b を引いて代入する |
| a *= b | a = a * b | a に b を掛けて代入する |
| a /= b | a = a / b | a を b で割って代入する |
| a %= b | a = a % b | a を b で割った余りを代入する |
たとえば、sum += score は、sum に score を足して、sum を更新するという意味です。
複合代入演算子を使うと、コードが短くなるだけではありません。
「この変数を更新している」という意図も伝わりやすくなります。
鬼滅の刃風にたとえると、sum += score は「これまでの修行点に、新しい修行成果を加えて、総合修行点を更新する」ようなものです。
演算子には優先順位がある
4章の中でも特に大切だったのが、演算子の優先順位です。
Javaでは、式に複数の演算子がある場合、必ずしも左から順番に計算されるわけではありません。
たとえば、次の式を考えます。
3 + 2 * 5この式では、* のほうが + より優先順位が高いため、先に 2 * 5 が計算されます。
| 式 | 先に計算される部分 | 結果 |
|---|---|---|
| 3 + 2 * 5 | 2 * 5 | 13 |
| (3 + 2) * 5 | 3 + 2 | 25 |
丸かっこを使うと、評価の順番を変えられます。
(3 + 2) * 5この場合は、丸かっこの中が先に計算されるため、結果は 25 になります。
鬼滅の刃風にたとえると、優先順位は「技の発動順」です。
通常は強い型が先に発動しますが、丸かっこは「この型を先に出せ」という明確な指示になります。
文字列連結では丸かっこが大切になる
演算子の優先順位でつまずきやすいのが、文字列連結と数値計算が混ざる場合です。
たとえば、次のような出力を考えます。
"1+2は " + 1 + 2 + " です。"この場合、先頭が文字列なので、+ は文字列連結として働きます。
さらに + は左結合なので、左から順番につながっていきます。
| 評価の流れ | 結果 |
|---|---|
| "1+2は " + 1 | "1+2は 1" |
| "1+2は 1" + 2 | "1+2は 12" |
| "1+2は 12" + " です。" | "1+2は 12 です。" |
そのため、表示は 1+2は 12 です。 になります。
もし 1 + 2 を先に計算したいなら、丸かっこを使います。
"1+2は " + (1 + 2) + " です。"この場合は、丸かっこの中が先に計算されるため、結果は 3 になります。
| 書き方 | 表示される考え方 |
|---|---|
| "1+2は " + 1 + 2 | 文字列として 1 と 2 が連結される |
| "1+2は " + (1 + 2) | 1 + 2 を先に計算する |
文字列と数値が混ざるときは、計算したい部分を丸かっこで囲むと安全です。
図:4章で学んだ内容の全体像
↓クリックすると拡大表示されます。

この図が示していること
この図では、4章で学んだ内容が「式と演算子」を中心につながっていることを示しています。
インクリメント・デクリメント、複合代入演算子、優先順位、型変換、キャスト、異なる型の演算は、それぞれ別々の知識に見えるかもしれません。
しかし、どれもJavaの式を正しく読み書きするために必要な考え方です。
ここから分かることは、4章の内容は単なる記号の暗記ではなく、Javaの処理を正しく理解するための土台だということです。
型が変わると値の扱われ方も変わる
4章の後半では、型変換とキャストを学びました。
Javaでは、値をどの型として扱うかがとても大切です。
たとえば、int 型は整数を扱います。
double 型は小数を含む数値を扱えます。
| 型 | 扱える値のイメージ |
|---|---|
| int | 整数 |
| double | 整数と小数 |
小さな型から大きな型へは、自動的に型変換されることがあります。
| 変換 | 特徴 |
|---|---|
| int → double | 自動で変換されることがある |
| double → int | そのままでは代入できないことがある |
| double → int のキャスト | 小数点以下が切り捨てられる |
たとえば、int の 10 を double に入れると、10.0 として扱われます。
これは、小さな型から大きな型への変換なので、Javaが自動で行える場合があります。
一方で、double の 10.8 を int に変換すると、10 になります。
小数点以下の .8 は切り捨てられます。
このように、大きな型から小さな型へ変換すると、情報が失われることがあります。
そのため、Javaは自動ではなく、キャストによる明示的な変換を求めることがあります。
鬼滅の刃風にたとえると、double 型は大きな水瓶、int 型は小さな竹筒です。
大きな水瓶の水を小さな竹筒に移すと、入りきらない部分がこぼれるかもしれません。だからJavaは、勝手には変換せず、キャストという明確な指示を求めます。
代入のときにも型変換が関わる
型変換は、演算のときだけでなく、代入のときにも関係します。
たとえば、int 型の値を double 型の変数に代入する場合、Javaは int を double に変換してくれます。
| 代入の例 | 起こること |
|---|---|
| int の値を double に代入 | int が double に変換される |
| double の値を int に代入 | そのままでは危ないためキャストが必要な場合がある |
代入は単に「値を入れるだけ」に見えます。
しかし、Javaでは代入先の型によって、値の扱われ方が変わります。
つまり、代入とは、値を移すだけでなく「どの型の器に入れるのか」を考える処理でもあります。
四則演算のときにも型変換が起こる
4章では、演算のときにも型変換が起こることを学びました。
たとえば、int 型と double 型を一緒に演算すると、int 型の値が double 型へ変換されてから計算されます。
| 演算 | 処理のされ方 |
|---|---|
| int + double | int が double に変換されてから計算 |
| int * double | int が double に変換されてから計算 |
| int / int | int 型のまま計算 |
| double / int | int が double に変換されてから計算 |
ここで特に重要なのが、int / int の割り算です。
整数どうしの割り算では、結果も整数として計算されます。
そのため、小数部分は切り捨てられます。
| 式の型 | 結果の考え方 |
|---|---|
| int / int | 整数の結果になる |
| double / int | double にそろえて小数の結果になる |
| int / double | double にそろえて小数の結果になる |
たとえば、5 / 4 を int 型どうしで計算すると、結果は 1 になります。
1.25 にはなりません。
小数を含む結果がほしい場合は、少なくとも一方を double 型にする必要があります。
鬼滅の刃風にたとえると、int 型どうしの戦いでは、整数の型でしか結果を出せません。
小数まで含めた細かい力加減が必要なら、戦う前に double 型の呼吸へ切り替える必要があります。
図:型変換と演算結果の流れ
↓クリックすると拡大表示されます。

この図が示していること
この図では、異なる型どうしの演算と、int 型どうしの演算の違いを示しています。
左側では、int 型の 3 と double 型の 2.5 を演算しています。
この場合、int 型の 3 が double 型の 3.0 に変換され、3.0 * 2.5 として計算されます。
結果は 7.5 になります。
右側では、int 型の 5 と int 型の 4 を割り算しています。
この場合、int 型どうしの演算なので、結果も整数として扱われます。
そのため、5 / 4 は 1.25 ではなく 1 になります。
ここから分かることは、Javaの演算結果は、数字そのものだけでなく、演算に参加している値の型によって決まるということです。
4章で学んだ内容を整理する
4章で学んだ内容を整理すると、次のようになります。
| 学んだこと | 内容 |
|---|---|
| 式と演算子 | 演算子はオペランドと組み合わさって式を作る |
| 変数を使った演算 | 変数の値を使って計算や更新ができる |
| 入力値を使った計算 | 入力によって結果が変わるプログラムを作れる |
| インクリメント・デクリメント | 変数の値を 1 増やしたり 1 減らしたりできる |
| 前置と後置 | 先に増減するか、あとで増減するかが変わる |
| 複合代入演算子 | 演算と代入をまとめて簡潔に書ける |
| 演算子の優先順位 | どの演算が先に行われるかが決まっている |
| 丸かっこ | 評価の順番を明確に変えられる |
| 型変換 | 型が自動的に変わる場合がある |
| キャスト | 明示的に型を変換できる |
| 異なる型どうしの演算 | 大きい型にそろえてから演算される |
| 同じ型どうしの演算 | その型のまま計算されるため注意が必要な場合がある |
この表を見ると、4章の内容は幅広く見えます。
しかし、すべて「Javaの式を正しく理解する」というテーマにつながっています。
コードは見た目どおりに動くとは限らない
4章で大切だった考え方の1つは、コードは見た目どおりに動くとは限らないということです。
たとえば、次のような場面です。
| 見た目の印象 | 実際の動き |
|---|---|
| 3 + 2 * 5 は左から計算しそう | * が先なので 13 になる |
| "1+2は " + 1 + 2 は 3 になりそう | 文字列連結で 12 になる |
| double に代入すれば小数になりそう | int / int の結果は整数になる |
| double から int にそのまま入れられそう | 小数が失われる可能性があるのでキャストが必要 |
Javaは、決まったルールに従って式を評価します。
演算子の優先順位、結合規則、型変換、キャストのルールを知っていると、「なぜこの結果になるのか」を説明できるようになります。
鬼滅の刃風にたとえると、技の見た目だけで判断せず、「どの型が先に発動するのか」「どの呼吸の流派で扱われているのか」を見ることが大切です。
これから先の学習につながる大切な土台
4章で学んだ内容は、この先のJava学習でも何度も出てきます。
たとえば、条件分岐では比較演算子や論理演算子を使います。
繰り返し処理では、インクリメント演算子や代入演算子がよく使われます。
配列やオブジェクトを扱うようになっても、式の評価や型の理解は欠かせません。
| 今後の学習内容 | 4章とのつながり |
|---|---|
| 条件分岐 | 比較演算子や論理演算子を使う |
| 繰り返し処理 | ++ や += をよく使う |
| 配列 | 添字の計算や更新で演算子を使う |
| メソッド | 引数や戻り値で型を意識する |
| オブジェクト指向 | 型の考え方がさらに重要になる |
4章は、単に計算の書き方を覚える章ではありません。
Javaのコードを正しく読み、意図どおりに書くための基礎を固める章です。
4章の内容を読むときの考え方
4章の知識を実際に使うときは、次のように考えると分かりやすくなります。
| 見るポイント | 確認すること |
|---|---|
| 演算子 | どんな処理をしているか |
| オペランド | 何に対して演算しているか |
| 優先順位 | どこが先に評価されるか |
| 丸かっこ | 評価順を変えているか |
| 型 | int なのか double なのか |
| 代入先 | 結果をどの型の変数に入れるか |
| キャスト | 明示的に型を変えているか |
この見方ができるようになると、複雑に見える式も少しずつ分解して読めます。
たとえば、式を見たときに、いきなり全体を理解しようとするのではなく、
- どの演算子があるか
- どの演算子が先に評価されるか
- オペランドの型は何か
- 結果はどの型になるか
- どこに代入されるか
という順番で見ていくと、落ち着いて理解できます。
Javaの式を自信を持って読むために
4章で学んだことは、どれもJavaの基礎ですが、実際のコードを読むうえではとても重要です。
演算子は短い記号なので、意味をあいまいにしたまま読み飛ばしやすいです。
しかし、+、=、++、+=、/、キャストなどは、ほんの少し意味を取り違えるだけで、結果が変わることがあります。
特に意識したいのは、次の3つです。
| 大切な視点 | 内容 |
|---|---|
| 式は評価されて値になる | Javaは式をルールに従って処理する |
| 演算子には順番がある | 優先順位と結合規則を意識する |
| 型によって結果が変わる | int と double の違いを意識する |
鬼滅の刃風にたとえると、4章で学んだ内容は、Javaの剣士としての基礎鍛錬です。
技の順番、呼吸の型、力の受け渡し方を理解することで、次の章から出てくる複雑な処理にも対応しやすくなります。
4章で身につけた「式を分解して読む力」は、この先の条件分岐、繰り返し、配列、メソッド、オブジェクト指向の学習でもしっかり役立ちます。
