Javaの初心者の方からよく質問されるエラーメッセージの一つが、「構文エラーがあります。’;’を挿入してStatementを完了してください」や「’}’を挿入してBlockを完了してください」というものです。このエラーは、コードの構文が正しくない場合に表示されます。
1. コードの基本構成とエラーの原因
今回のコードのエラーメッセージは、基本的に以下の2つが原因となっています。
- セミコロン(`;`)が抜けている
- 中括弧(`{}`)が正しく閉じられていない
これらのエラーは、プログラムの構文に問題がある場合に発生します。例えば、`System.out.println()`の後にセミコロンを忘れている場合や、メソッドのブロックが正しく閉じられていない場合です。
2. コードの確認と修正方法
質問のコードにおいて、特に問題となるのは「import」部分や「main」メソッド内の処理です。コードの修正箇所を確認していきましょう。まずは、`package`の記述がJavaのコーディングスタイルに適しているか確認します。また、`System.out.println()`の後に必ずセミコロンを入れることも大切です。
3. 修正後の正しいコード例
以下に、正しい形式に修正したコードを示します。
public class Study {
public static final String SHOP_SHOHIN_00 = "バナナ";
public static final String SHOP_SHOHIN_01 = "牛乳";
public static final String SHOP_SHOHIN_02 = "豚肉";
public static final String SHOP_SHOHIN_03 = "コロッケ";
public static void main(String[] args) {
List shohinList = new ArrayList();
shohinList.add(SHOP_SHOHIN_00);
shohinList.add(SHOP_SHOHIN_01);
shohinList.add(SHOP_SHOHIN_02);
shohinList.add(SHOP_SHOHIN_03);
Map shopMap = new HashMap();
shopMap.put(shohinList.get(0), 125);
shopMap.put(shohinList.get(1), 180);
shopMap.put(shohinList.get(2), 350);
shopMap.put(shohinList.get(3), 100);
for (Map.Entry entry : shopMap.entrySet()) {
System.out.println(entry.getKey() + "=" + entry.getValue() + "円になります!");
}
}
}
4. よくあるコーディングミスとその解決策
初心者の方がよく犯すコーディングミスには、セミコロンを忘れる、括弧を閉じ忘れる、メソッド内での変数定義ミスなどがあります。これらを解決するためには、コードを一行ずつ確認し、コンパイラがどこでエラーを検出したのかを確認することが重要です。
まとめ
「構文エラーがあります」というエラーメッセージは、プログラムの構文に問題があることを示しています。正しくセミコロンや中括弧を使い、コードの形式を保つことがエラー解決の第一歩です。修正後のコードを実行し、再度エラーが出ないか確認しましょう。


コメント