class A
{
public static void main(String args[])
{
int a=0;
for(int i=0,System.out.println("a");i<10;i++)  //居然编译出错了。
;
}
}

解决方案 »

  1.   

    int i=0,System.out.println("a");
    执行的是
    int i = 0;
    int System.out.println("a");
    这样当然编译报错了int a = 0, i;
    用for(i = 0, System.out.println("a"); i < 10; i++)
    {
        //
    }
      

  2.   

    int i=0;
    if(3>2)
       i=3,System.out.println(i);这个为啥报错了半个小时后结贴。
      

  3.   


    class A
    {
        public static void main(String args[])
        {
            int a=0;
            for(int i=0,System.out.println("a");i<10;i++)  //int i =0,System.out.println("a")错了
                ;
        }
    }
    楼主为什么要写成这样呢???????
      

  4.   


    class A
    {
       public static void main(String args[])
        {
          int i=0; 
          if(3>2) 
           i=3,System.out.println(i);
         }

    这个为什么出错了。晕了
      

  5.   

    i=3,System.out.println(i);明明是两个不同的语句为什么一定要写在一起呢?除非这样用:int i = 3, k = 5; 这个等效于 int i = 3; int k = 5;
    我们甚至能写成这样:
    int[] i = new int[2], k[] = new int[2][3];但是这种写法一般是不推荐使用的,理由很简单阻碍代码阅读,因此应该改成:
    int[]   i = new int[2];
    int[][] k = new int[2][3];
      

  6.   

    for的括号里面才可以用逗号分割语句其它地方应该用分号 <--------应该是常识吧.....难道lz写c/c++的时候也可以用逗号分割语句的?
      

  7.   

    class A
    {
        public static void main(String args[])
        {
            int a=0;
            for(int i=0,System.out.println("a");i<10;i++)  //居然编译出错了。
                ;
        }
    }
    这样编译当然会出错啦,循环休没有内容啊
      

  8.   

    #include<stdio.h>
    void main()
    {
       int a,b;
       float c;
       if(3>2)
          a=3,printf(" ok "),b=4,c=5.0,printf(" %8.6f%\n\n",c);
    }这个程序在C里是调试正确的。
    我很谢谢大家,但也不希望,大家没有调查就说C里是不行的。
    class A
    {
       public static void main(String args[])
        {
          int i=0; 
          if(3>2) 
           i=3,System.out.println(i);  //可是JAVA这里会编译出错的。
         }

      

  9.   

    汗,你已经证明了  i=3,System.out.println(i);  //可是JAVA这里会编译出错的。 
    java不能这么用。还问什么呢?
      

  10.   

    即使在c/c++里面理解,這也是錯的啦
    i=3,System.out.println(i);你逗號運算符的結果取最後一個,但你Sytem.out.println()哪有返回整型值給i啊
      

  11.   

    这个只是规定问题,你要是牛的话,可以自己写如何编译代码;
    int i=3; 用分号是一句结束
    int i=3,j=3;  中间用逗号是定义两个 int i=3; int j=3;
    谢谢。
      

  12.   

    可谁又能解释在java里以下的逗号表达式可以用呢????????
    class A
    {
    public static void main(String args[])
    {
    int a = 0, i; 
    for(i = 0, System.out.println("a"); i < 10; i++) 
    {  }
    }
    }
      

  13.   

    int i=0;
    if(3>2)
      i=3,System.out.println(i);條件判斷后,如果不用{ ... }的話,只能用一個語句,
    i=3,System.out.println(i);是兩個語句。
    java是不會自動幫你把其中的“,”變成“;”的。
      

  14.   

    不懂为什么可以执行,for循环当中的“,”号和外边的语义不一样
      

  15.   

    c/c++可以这么写
    JAVA我认为是把c/c++容易出错的部分都出错了。
      

  16.   

    牛角尖的问题 
    还没见过把out语句写在这的
      

  17.   

    不要冠以牛角尖掩饰不知道。
    只是相信不同意见,在学习中,才是向上的动力。
    因为大家都从一无所知,到知的。只是不知道
    for里边的语句规定,
    与if为什么不一样。
    在C里是肯定一定的,见我的13楼
      

  18.   

    無語...將c和java來比,有何意義?C中有逗號表達式,java中沒有這東西,只是for里可以允許以逗號分隔語句
    http://www.java-samples.com/showtutorial.php?tutorialid=276
      

  19.   


    这语法是正确的,java支持逗号表达式,在java的for循环初始化时逗号表达式必须是同一类型的,显然i = 0与System.out.println("a")都不是声明变量,因此不会有错,而楼主提到的C语法其实和java基本相同的,之所以C语言可以通过是因为在C语言中任何函数都有返回值,void的值就是数字0,而java中的void是特殊的空值,并非数字
      

  20.   

    一个int类型、以String类型,当然不支持了。好比声明,int i=5,j="10000000"; 这个当然不支持了。int i=5,j=10000000; 这个显然对极了。
      

  21.   

    一个int类型、一个String类型,当然不支持了。 好比声明,int i=5,j="10000000"; 这个当然不支持了。 int i=5,j=10000000; 这个显然对极了。
      

  22.   

    C里有逗号表达式,如a=(2,3,4)这样的。但java里不支持,会报错