Java基礎 — 文と空白・改行の練習問題 10問セット
では、さきほどの内容(「文」「空白・改行」「セミコロン」「インデント」「ブロック」など)をしっかり理解できるように、初心者向けの練習問題 10 問セット(+解答・解説付き) を用意しました。
段階的にレベルアップする形で構成しています。
問1:順番に実行される文
次のコードを実行すると、出力結果はどうなりますか?
public class Main {
public static void main(String[] args) {
System.out.println("Hello");
System.out.println("World");
}
}
Java答え:
Hello
World
解説:
文は上から順に実行されます。1つ目の文で「Hello」、2つ目で「World」が出力されます。
問2:セミコロンの抜け
次のコードにある間違いを直しなさい。
System.out.println("Start")
System.out.println("End");
Java答え:
System.out.println("Start");
System.out.println("End");
Java解説:
文の終わりには必ずセミコロンが必要です。
問3:識別子の途中にスペース
次のコードのどこが間違っていますか?
Sys tem.out.println("Hi");
Java答え:System の途中にスペースが入っているためエラー。
正しくは:
System.out.println("Hi");
Java問4:空白や改行を自由に使ってもよい例
次のプログラムはエラーになりますか?
System.out
.println(
"Hello"
);
Java答え:
✅ 正しく動作します。
解説:
空白や改行は識別子の途中でなければ自由。構文的には問題ありません。
問5:複数の文をブロックでまとめる
次のコードの出力を答えよ。
if (true) {
System.out.println("One");
System.out.println("Two");
}
System.out.println("Three");
Java答え:
One
Two
Three
解説:if (true) のブロック { ... } 内の2文が実行され、続いて Three も出力されます。
問6:ブロックの波かっこがずれていても動く?
次の2つの書き方はどちらも動く?違いは?
if (true) {
System.out.println("A");
}
Javaif (true)
{
System.out.println("A");
}
Java答え:
✅ どちらも正しく動く。
違い:
書式(見た目)が違うだけ。構文的には同じ。プロジェクトによってスタイルを統一するのが望ましい。
問7:ブロックを忘れた場合
次のコードの出力を答えよ。
if (true)
System.out.println("A");
System.out.println("B");
Java答え:
A
B
解説:if にブロック {} を付けていない場合、if の対象は直後の1文だけ。B は if の外なので常に実行される。
問8:インデント(字下げ)の役割
次のコードは動作しますか?
public class Main {
public static void main(String[] args) {
System.out.println("No indent");
}
}
Java答え:
✅ 動作する。
解説:
インデントは見た目の整形だけで、構文には影響しません。
ただし読みづらくなるので、インデントを付けるのがマナーです。
問9:文を途中で改行するときのルール
次の2つのうち、どちらが正しく動くでしょう?
①
System
.out
.println("OK");
Java②
System.out.
println("NG");
答え:
① 正しい ✅
② 間違い ❌
解説:
ピリオド(.)の後で改行するとコンパイルエラーになる場合があります。. の前で改行するのが安全。
問10:少し応用 — 改行コードを使う
次のコードの出力結果を答えなさい。
System.out.println("A\nB\nC");
Java答え:
A
B
C
解説:\n は改行コード。文字列の中で行を変えたいときに使います。
発展練習(自分でやってみよう)
if (false)に変えて、ブロック内の文が実行されないことを確認する。- セミコロンをわざと抜いて、コンパイルエラーメッセージを読んでみる。
- インデントを全部消したり、変えたりしても動作が同じか確認する。
- 1つの行に複数の文を並べてみる:
System.out.println("A"); System.out.println("B");→ これも動く(ただし見づらい!)
まとめチェック(クイック復習)
| 覚えること | 内容 |
|---|---|
| 文(statement) | 命令の1単位。末尾に ; が必要 |
| 実行順序 | 上から順に実行される |
ブロック {} | 複数の文をまとめる |
| 空白・改行 | 自由に入れてOK(識別子の途中はNG) |
| インデント | 読みやすくするために使う(構文に影響なし) |
\n | 改行コード(文字列中で改行する) |
