【java】i++与++i、i--运算

 1 package test;
 2 
 3 //i++与--i运算
 4 public class test {
 5 
 6     public static void main(String[] args) {
 7         int b=0;
 8         int i=1;
 9         b=i++ + ++i + --i;
10         System.out.println("i="+i); //输出i=2
11         System.out.println("b="+b); //输出b=6
12     }
13 }

先要记住这句话:++i ,先自加1,然后再赋值给 b,当 i++ 时先把 i 的值赋给 b 在自加1。--原理一样。从  左 向 右  算(网上很多说法,多测试你就明白了)!

i在自加的时候i的值会马上更新,所有上面的三个 i 数值不一定相同!

运算:                        b=i++  +  ++i   +   --i;           

  把它分成三部分看: 一      二        三

                   b = 1   +  3   +  2  

               (一)i++   i是先赋值给b 然后自加,初始值为1所以先把1赋给b          (二)++i   i 在第一部分赋值给b后 i自加1所以此时i等于2,又因为++i,所以先自加1再赋值给b,所以第二部分等于3    

                               (三) --i  i在第二部分变成了3,又因为减号在前所以先自减在赋值给b,此时第三部分等于3   i 减 1等于2(i的值不需要看前后的++、--)

      然后把它们相加   b=6    i=2 

   若有不同看法请留言指点!

posted @ 2017-09-11 01:06  flashman126  阅读(991)  评论(0编辑  收藏  举报