Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 为什么这不是语法错误/那是什么语法_Java_Syntax - Fatal编程技术网

Java 为什么这不是语法错误/那是什么语法

Java 为什么这不是语法错误/那是什么语法,java,syntax,Java,Syntax,我很难找到重复或解释,因为我不知道语法的名称 今天早些时候,我编写了一段代码,其中包含一个额外的;: 我知道if语句被;中断;。我感兴趣的是街区 { // something } 没有前导if的{}块是怎样的呢。。。打过电话,我能用它做什么 您可以自己使用{}块,您不一定需要if、else或其他关键字 这些块对于构造代码或限制局部变量的范围非常有用,例如: { int myVar = ...; } MyVar在块外是不可见的/可访问的,这样就可以更容易地读取这个代码,因为

我很难找到重复或解释,因为我不知道语法的名称

今天早些时候,我编写了一段代码,其中包含一个额外的;:

我知道if语句被;中断;。我感兴趣的是街区

{
    // something
}
没有前导if的{}块是怎样的呢。。。打过电话,我能用它做什么

您可以自己使用{}块,您不一定需要if、else或其他关键字

这些块对于构造代码或限制局部变量的范围非常有用,例如:

{
     int myVar = ...;
}

MyVar在块外是不可见的/可访问的,这样就可以更容易地读取这个代码,因为你不必考虑块外的MyVa.

< P>你可以自己使用{}块,你不一定需要,否则,或者其他关键字。 这些块对于构造代码或限制局部变量的范围非常有用,例如:

{
     int myVar = ...;
}

MyVar在块外是不可见的/可访问的,这样就可以更容易地读取这个代码,因为您不必考虑块外的MyVa.< /P> < P>它被称为匿名代码块。 有一篇关于该功能动机的文章

它被称为匿名代码块

有一篇关于该功能动机的文章


它只是一个复合语句。输入错误不是语法错误的原因是,根据定义,if语句后面紧跟着一条语句。那可能是一句空话;,简单语句x=x+1,或复合语句{…}

复合语句本身而不是用作and if、for等的主体,通常用于定义一个范围,在该范围内可以定义具有精确寿命的变量

// No foo out here
{
   int foo;
   ...
}
// No foo here either

它只是一个复合语句。输入错误不是语法错误的原因是,根据定义,if语句后面紧跟着一条语句。那可能是一句空话;,简单语句x=x+1,或复合语句{…}

复合语句本身而不是用作and if、for等的主体,通常用于定义一个范围,在该范围内可以定义具有精确寿命的变量

// No foo out here
{
   int foo;
   ...
}
// No foo here either