自己増減演算子i++と++iの浅い分析

4146 ワード

Java演算子を学ぶとき、自増自減に触れましたが、簡単そうに見えるものが理解できないことがよくあります.特にi=i++の問題は、今日分析して理解し、苦境を脱します.
一.自増自減演算子
分析する前に簡単に認識してください.
アイコン
意味
i++
後置自増(後置++)
++i
プリアンブル自己増加(プリアンブル++)
i- -
後置自減(後置-)
- -i
前自己減算(前–)
二.分析と実例
1).i++および++i
  int i=1++i;
  System.out.println("i="+i);// i=2
  
  int i=1;
  i++;
  System.out.println("i="+i);// i=2
  

上のコードの++iとi++は、前置自増でも後置自増でも、実際に実行されるi+1の操作であり、実際の印刷結果i=2であり、問題は大きくない.
2).i=i++とi=++i
  int i=1;
  i=++i;
  System.out.println("i="+i);// i=2
  
  int i=1;
  i=i++;
  System.out.println("i="+i);// i=1
  

以下のコードiの印刷結果は自己増加していない.公式解釈:javaの実行中、i++と++iはiに対してi=i+1の操作を直接行ったが、i++が得たのはiが加算操作を行わなかった前の値のコピーであり、++iは計算後の値を直接得た.
理解できなくても大丈夫です.コードで直感的に理解して、i++の値を受信するために中継局を構築してみてください.
  int i=1;
  i=i++;
  int temp=i++;// i++      
  System.out.println("temp="+temp);//temp=1
  i=temp; //        i
  System.out.println("i="+i);//    i=1
  

通俗的に言えば、i++は先に値をつけて、それから自増します;++iは、まず自己増加し、その後付与する.