java字符串比较不要用== !=
用 if (!flat.equals("Y")) break;
在while循环内部加入条件判断语句并不能直接导致无法进入循环,可能是因为其他代码逻辑错误造成的。但是可以确认的是,break语句的确可以跳出单层或多层循环,甚至可以通过带标签的形式跳出多层循环。在处理多层循环时,可以通过标签来跳出指定的多层循环,代码如下:
outCycle: for (int i = 0; i < 10; i++) {
for (int j = 0; j < 10; j++) {
if (j == i) {
break outCycle;
}
}
}
上面的代码表示使用标签“outCycle”来跳出外层循环,在内层循环中出现j == i 的情况时执行break outCycle;即可跳出整个循环。如果不使用标签,则break只能跳出当前循环。如果需要在跳出多层循环时执行其他操作,可以在跳出的位置加入需要执行的语句。