今天在看Java的i++ 和++i 的区别,感觉自己还是会绕。正好整理下。
i++:先赋值,后计算;
++i;先计算,后赋值。
看下面代码:
- public class Text {
- public static void main(String[] args) {
- int i = 1;
- int j = 1;
- int k = 1;
- i++;
- System.out.println("j++ is "+ j++);
- System.out.println("i is "+i);
- System.out.println("++k is "+ ++k);
- }
- }
执行结果:
我呢,原先是结合for循环记忆的,
因为for循环里的都是i++; 我有写了for循环,i++ 和 ++i
- for (int i = 0; i < 10; i++) {
- System.out.println(i);
- }
与
- for (int i = 0; i < 10; ++i) {
- System.out.println(i);
- }
结果打印都是 0 到 9 。。
什么鬼,于是我就搜了搜关于for循环的:
for循环的执行顺序如下:
for(sta1;sta2;sta3)
{
sta4;
}
1.进入循环执行sta1;//只是进入的时候执行.
2.执行sta2;//条件为真才执行sta4,不然就跳出for了.
3,执行sta4;
4,执行sta3;
5,再回到第2步开始执行
哈哈,大家看看下面结果是什么呢
- public class T2 {
- static boolean foo(char c) {
- System.out.print(c);
- return true;
- }
- public static void main(String[] argv) {
- int i = 0;
- for (foo('A'); foo('B') && (i < 2); foo('C')) {
- i++;
- foo('D');
- }
- }
- }
|
|