当我填充字符数组时,出现错误。
List<Character> letters = new ArrayList<>();
int i = 0;
if (i == 0) {
Character str = 'a';
letters.add(str);
} else if (i == 1)
Character str = 'b'; //Variable declaration not allowed here
letters.add(str);
}
为什么会出现这个错误信息?情况 i==0 和 i==1 是相互的 独家的。为什么编译器不允许我第二次 decare str?
最佳答案
范围不重叠,这是正确的。您忘记了 else if
行中的左大括号。这只是一个拼写错误,看起来像
} else if (i == 1){
修复了问题。
您的情况与 JAVA Variable declaration not allowed here 明显不同
关于java - 不允许变量声明。但没有范围重叠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38774960/