在
Java中,do-while循环的主体和循环条件不属于同一范围.所以下面的代码将不会编译:
do { boolean b = false; } while (b); // b cannot be resolved to a variable
但这段代码对我来说是有道理的.
此外,如果身体和病情在同一范围内,我找不到任何陷阱;因为身体总是被执行,而Java没有Goto,我不知道如何跳过最外面的do-while body范围内的变量声明.即使可能,编译器也可以总是检测到这种可能性,然后产生编译时错误.
是否有任何这种行为的原因(除了保持do-while循环与while一样的格式)?我很好奇感谢任何投入!
解决方法
因为这是Java中定义的范围;里面{}是一个新的范围.
海事组织在特殊情况下,单一的结构不会有什么意义.