中級 › 値が変わらないときに疑う変数の隠蔽 › パターン3
値が変わらないときに疑う変数の隠蔽
同名のローカル変数がフィールドを覆い隠します。
1 public class Main { 2 public static void main(String[] args) { 3 int sum = 0; 4 for (int i = 0; i < 3; i++) { 5 ________sum = sum + i; ^ 6 } 7 System.out.println(sum); 8 } 9 }
Main.java:5: error: variable sum is already defined in method main(String[])
空欄を埋めてビルドを通す
ループの中で同名を再宣言すると、外側と衝突します。集計用の変数はループの外で1回だけ宣言します。
次の問題