离破碎虚空的不远了。
public static void main(String[] args) {
System.out.println("outer Before");
{
boolean i;
if (i = false) {
{
//code
System.out.println("inner IF");
}
}
else{
System.out.println("outer ELSE " + i);
}
System.out.println("outer After");
} }
这样能执行吗?给点解释吧,受不了了。
这样呢?
public static void main(String[] args) {
System.out.println("outer Before");
{
{
boolean i;
if (i = false) {
{
//code
System.out.println("inner IF");
}
}
}
else{
System.out.println("outer ELSE " + i);
}
System.out.println("outer After");
} }
呵呵
public static void main(String[] args) {
System.out.println("outer Before");
{
boolean i;
if (i = false) {
{
//code
System.out.println("inner IF");
}
}
else{
System.out.println("outer ELSE " + i);
}
System.out.println("outer After");
} }
这样能执行吗?给点解释吧,受不了了。
这样呢?
public static void main(String[] args) {
System.out.println("outer Before");
{
{
boolean i;
if (i = false) {
{
//code
System.out.println("inner IF");
}
}
}
else{
System.out.println("outer ELSE " + i);
}
System.out.println("outer After");
} }
呵呵
第二个不能
else {} 算一个块 但是必须紧跟if{} 块后面
单个块{} 里面能再加{}....必须成对出现
public class Test { //{1}..start
public static void main(String[] args) { //{2}..start
System.out.println("outer Before");
{ //{3}..start
boolean i;
if (i = false) { //{4}..start
{ //{6}..start
System.out.println("inner IF");
} //{6}..end
} //{4}..end else { //{5}..start
System.out.println("outer ELSE " + i);
} //{5}..end
System.out.println("outer After");
} //{3}..end
} //{2}..end
}//{1}..end//以上全是标准嵌套,切else块{5} 紧跟在块{4}之后public static void main(String[] args) { //{1}...start
System.out.println("outer Before");
{//{2}...start
{ //{4}..start
boolean i;
if (i = false) {//{5}..start
{//{6}..start
System.out.println("inner IF");
}//{6}..end
}//{5}..end
}//{4}..end
else{//{3}..start
System.out.println("outer ELSE " + i);
} //{3}..end
System.out.println("outer After");
}//{2}..end} //{1}...end//由于else块{3} 没有紧跟if块{5},而跟的是块{4} ...所以编译不过