for循环 i++和++i 的区别
一、相同: 在 i 没有涉及{}内部运算时,两者效果一样。
二:不同:++i 是先执行 i=i+1 再使用 i 的值,而 i++ 是先使用 i 的值再执行 i=i+1。速度差别主要是用在迭代器上,++i少复制一次
三: for循环的执行顺序如下:
for(s1;s2;s3){ s4;} 1.进入循环执行s1;//只是进入的时候执行.
2.执行s2;//条件为真才执行s4,不然就跳出for了.
3,执行s4;
4,执行s3;
5,再回到第2步开始执行
再看以下例子:
for (int i = 0; i < 100; i++) { System.out.println(i); } 与
for (int i = 0; i < 100; ++i) {System.out.println(i);}
对于i++:执行到for这一行时,先判断i<100,然后执行下面{ }内的程序体,最后再把i加1。
对于++i:执行到for这一行时,先把i加1,然后判断i<100,然后执行下面{ }内的程序体。
所以第一个程序执行100次循环。第二个程序只执行99次。