java-i++的原理探究


先看例子:

package com.test;

  publick class Auto{

    public static void main(String[] args){

      Auto inc=new Auto();

      int i=0;

      i=i++;

      System.out.println(i);

  }

}

看輸出結果:

如果把i=i++;換成i++呢;

package com.test;

  publick class Auto{

    public static void main(String[] args){

      Auto inc=new Auto();

      int i=0;

      i++;

      System.out.println(i);

  }

}

看輸出結果:

 

如果將i=i++和i++放入循環中是什么情況呢?

package com.test;

  publick class Auto{

    public static void main(String[] args){

      Auto inc=new Auto();

      int i=0;

      for(int j=0;j<100;j++){
        i=i++;
      }

      System.out.println(i);

  }

}

 

結論:1、i++有三項操作,將值賦給中間變量int temp=i;i=i+1;return i;

   2、i=i++有四項操作,將值賦給中間變量int temp=i;i=i+1;i=temp;return i;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM