为什么这个java代码不返回任何输出?
这是一个测验题。该问题询问运行此代码时给出了什么输出。我不明白为什么什么都得不到输出。有人能解释一下吗?我对if/else的理解是,如果if语句失败,else语句将运行。为什么else语句不运行 守则:为什么这个java代码不返回任何输出?,java,Java,这是一个测验题。该问题询问运行此代码时给出了什么输出。我不明白为什么什么都得不到输出。有人能解释一下吗?我对if/else的理解是,如果if语句失败,else语句将运行。为什么else语句不运行 守则: int age = 10; char registered = 'n'; if(age >= 18) { if(registered == 'y') { System.out.println("You can vote!"); } else { System.ou
int age = 10;
char registered = 'n';
if(age >= 18) {
if(registered == 'y') {
System.out.println("You can vote!");
}
else {
System.out.println("You're not old enough");}
}
因为这是您的实际代码(正确缩进):
age
小于18
,因此如果执行-语句,则最外层的中没有任何内容
(老实说,我认为这是一个糟糕的问答题。它只不过是带括号的把戏——它并不能真正测试你的Java知识。)正确缩进代码,你就会意识到如果age<18
变量age的值为10,然后,它不满足第一个if条件if(age>=18),代码的所有其余部分都在该条件的真分支内。它位于倒数第二行的末尾,因为age
不大于18?
if (age >= 18) {
if (registered == 'y') {
System.out.println("You can vote!");
}
else {
System.out.println("You're not old enough");
}
}