public class breakqian2 { public static void main(String[] args) {
 int count=0; for (int i=1;i<=3;i++)     for (int k=1;k<=3;k=k+1) 
        
 ++count;
     System.out.println(count);
         }
            
     
 }
 这里第二个for句子后面没有大括号.public class breakqian2 { public static void main(String[] args) {
 int count=0; for (int i=1;i<=3;i++)           for (int k=1;k<=3;k=k+1) {
        
 ++count;}
     System.out.println(count);
         }
            
     
 }
 这里第二个for语句后面有大括号,
为什么他们执行的结果都是9呢?
第一个不是顺序执行吗?第二个才是循环自加。
我是这么理解的,请问大哥哥们我那里出了问题啊?
另外for标准格式是:for后面带了大括号,为什么这里句子里面是两个for语句连续执行的,没有用大括号分开啊。他们的执行步骤是怎样的啊?
谢谢哥哥们指教小弟在此谢过了!!!

解决方案 »

  1.   

    Java不管是for语句还是if语句,都是支持不带“{}”的,如果不带“{}”,第一行语句是它的执行体。如果带“{}”那么整个大括号包起来的部分是它的执行体。
    也就是说你的
    for (int i=1;i<=3;i++)    for (int k=1;k<=3;k=k+1)  
        
    ++count;等同于for (int i=1;i<=3;i++)    for (int k=1;k<=3;k=k+1) {
        
    ++count;}
      

  2.   

    for后面的一句是一句整体的执行体,只有当FOR后面的语句超过一句的时候才需要加大括号,所以第一个程序中的第二个for就被当成是第一for的执行体。这么解释懂么?