class Jia
{
    public static void main(String[] args)
    {
        for(int i=0;i<3;System.out.println("loop:"+(++i)))
        {
            System.out.println(i);
        }
    }
}
---------------------------------
输出结果:
0
loop:0
1
loop:1
2
loop:2怎么不是下面的输出结果
0
loop:1
1
loop:2
2
loop:3太奇怪了。

解决方案 »

  1.   

    我重新把你程序执行了一下 答案是
    0
    loop:1
    1
    loop:2
    2
    loop:3
      

  2.   

    我运行的结果
    0
    loop:1
    1
    loop:2
    2
    loop:3
      

  3.   

    我机子上执行的结果:
    0
    loop:1
    1
    loop:2
    2
    loop:3
      

  4.   

    奇诡,我用Jia.java保存这个源文件输出结果就是上面的,如果用JiaJia.java保存源文件,输出结果就是下面的,怎么回事,大家试试看!!
      

  5.   

    真奇诡,我把之前编译的Jia.class也删除了,重新编译也不行。
      

  6.   

    发现问题了,是我设置了classpath,而在classpath底下就有一个jia.class, 所以每次执行java  Jia.class 都是执行了classpath下面那个jia.class, 。
      

  7.   

    ++i,i++,i的值会+1,但是(i++)这个整体的值是没有变化的,i = 0;j=i++;i的值编程1,j的值还是0.
      

  8.   

    ++i 的意思就是 i先+1 然后i的值代表整个表达式的值
    如 i=0 s=0 执行s=++i 后 s=1 i=1
    i++ 的意思是 整个表达式的值是i 用完表达式的值以后i在+1
    如 i=0 s=0 执行s=i++后 s=0 i=1 
      

  9.   

    for (step 1; step 2; step 4) {
        step 3
    }