public class ttt {
public static void main(String[] args) {
    int i=0;
    for(int j=0;j<10;j++){
     ++i;  //或者是i++
System.out.println(i);
   }

}
把++i改为i++,输出的结果还是一样,为什么呢?

解决方案 »

  1.   

    楼主试一下这个看还一样不
    public class ttt {
    public static void main(String[] args) {
    int i=0;
    for(int j=0;j<10;j++){
    i=++i; //或者是i=i++
    System.out.println(i);
    }

    }
      

  2.   

    i++先赋值后加1
    ++i先加1后赋值
    public class test {
    public static void main(String[] args) {
    int i=0;
    for(int j=0;j<10;j++){
    ++i; //或者是i++
    System.out.println(i);//这里输出的时候无论是i++,还是假++i,此时的i都加1,也就是1,2,3,4,5..
    }
    }  
    }
     
      

  3.   

    1楼弄对了
    i++跟++i是在运算中起作用  单独使用情况一样
    a=i++;跟a=++i就不同了  
    单独使用i++跟++i是相同的
      

  4.   

    lz,当你用i++;后面在输出i,无论怎样都已经自加过了,所以你写的语句有问题.
    试试这个:
    public class man
    {
    public static void main(String args[])
    {
    int i = 0;
    for(int j = 0;j < 10;j++)
    {
    System.out.println(++i\\i++);
    }
    }
    }
      

  5.   

     楼主先要搞明白 i++ 和 ++i 的用法
     首先 i++ 是先 赋值 在进行+ 的运算  譬如  i=1 a=i++; 这样是先给a 赋值 为1  i 再 自加 输出结果是  a=1; i= 2;
     ++i 正好相反 i=1;a=++i; 结果是 a=2; i=2;也就是说  i先自加 在赋值给a
     看看这个经典的例子:
                 int i = 5;
     for(int j=0;j<1000;j++)
    i=i++;
     System.out.println(i); 
             输出结果为 5;
         int i = 5;
     for(int j=0;j<1000;j++)
    i=++i;
     System.out.println(i);
            输出结果为1005;
    楼主好好领会一下!