在 Java 中具有一对强制大括号的单行循环
以下代码段中的代码工作正常。它计算使用静态字段创建的对象数,该字段的类型为 。int
cnt
public class Main
{
private static int cnt;
public Main()
{
++cnt;
}
public static void main(String[] args)
{
for (int a=0;a<10;a++)
{
Main main=new Main();
}
/*for (int a=0;a<10;a++)
Main main=new Main();*/
System.out.println("Number of objects created : "+cnt+"\n\n");
}
}
它显示以下输出。
Number of objects created : 10
唯一的问题是,当我从上面的循环中删除一对大括号时(请参阅注释的循环),会发出编译时错误,指示for
for
不是声明。
为什么在这种特殊情况下,即使循环只包含一个语句,一对大括号也是必需的?