0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

“なぜそうなるのか?”を全部調べたJava Silver SE17黒本攻略記 #2

Posted at

🟢はじめに

Java Silver SE17の黒本を使って学習を進める中で、前回は「基本文法」「型の違い」「型変換」「varの制限」など、Javaの土台となる部分を整理しました。
今回はその続きとして、条件分岐とループ構文について掘り下げていきます。

この分野は一見シンプルに見えますが、試験では「なぜそうなるのか」「この場合はどれに当てはまるか」といった問題が多く出題されます。
特に試験文の挙動が、「ifの使い方」や「拡張forの使い方」など、初学者が詰まりやすいポイントです。

この記事では、黒本の問題をベースにしながら、試験において理解できるように条件分岐とループ構文を整理していきます。
Qiitaでのアウトプットを通じて、同じように学習している方の参考になれば幸いです。


🧠 条件分岐の基本とその本質

Javaにおける条件分岐は、プログラムの流れを制御するための「判断軸」です。Silver試験でも頻出であり、単なる文法暗記ではなく「なぜそのように動くのか」を理解することが合格への鍵となります。

① if文の基本構文と注意点

if (条件式) {
    // 条件がtrueのときに実行される処理
}
  • 条件式はboolean型である必要がある
    例えば if (x = 5) のように代入演算子を使ってしまうと、コンパイルエラーになります。=== の違いは初学者が混乱しやすいポイントです。
  • 複数条件の扱い
    &&(AND)や ||(OR)を使った複合条件では、短絡評価(short-circuit evaluation)が働くことに注意。
if (x > 0 && check(x)) { 
    ... 
}

この場合、x > 0 が false なら check(x) は評価されません。

else if / else の構造と分岐の流れ

if (条件1) {
    // 条件1がtrue
} else if (条件2) {
    // 条件1がfalseかつ条件2がtrue
} else {
    // すべての条件がfalse
}
  • 上から順に評価されるため、条件の順序がロジックに影響します
  • elseは省略可能ですが、意図しない動作を防ぐために明示的に書く方が安全です

💡 よくあるミスと試験対策ポイント

  • if (条件); のようにセミコロンを誤って書いてしまうと、条件に関係なく次の処理が実行されてしまいます
  • ブロック {} を省略すると、意図しない動作になることがあるため、Silver試験では明示的なブロック記述が推奨されます

② 条件分岐:switch文で複数条件を整理する

if 文は柔軟な条件分岐に向いていますが、特定の値に応じて処理を分けたい場合には、switch 文を使うことでコードの見通しがぐっと良くなります。
ここでは、switch 文の基本構文と使いどころを、納得感を持って理解できるように整理します。

🔸 switch文の基本構文

switch () {
    case 値1:
        // 式が値1と一致したときの処理
        break;
    case 値2:
        // 式が値2と一致したときの処理
        break;
    default:
        // どのcaseにも一致しなかったときの処理
}
  • 式 には intString など、比較可能な値を指定します
  • break を書かないと、次の case に処理が「落ちる」ので注意が必要です(これを「フォールスルー」と呼びます)

🔸 例:曜日に応じたメッセージ表示

String day = "MONDAY";

switch (day) {
    case "MONDAY":
        System.out.println("週の始まりです。気合い入れていきましょう!");
        break;
    case "FRIDAY":
        System.out.println("もうすぐ週末ですね。あとひと踏ん張り!");
        break;
    default:
        System.out.println("今日も一日頑張りましょう!");
}

このように、switch 文を使うことで、複数の条件をすっきりと整理できます。特に if-else が連続するような場面では、可読性の向上に役立ちます。


🔸 if文とswitch文の使い分け

  • 条件が「true/false」や範囲で分岐する場合 → if 文が適している
  • 条件が「特定の値」によって分岐する場合 → switch 文が見やすく整理しやすい

Java Silver SE17の試験でも、switch 文の構文やフォールスルーの挙動は頻出ポイントです。次は、複数の case をまとめるテクニックや、switch 文の落とし穴について掘り下げていきます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?