1

可能な重複:

減少前と減少後

++ iとi ++の違いは何ですか?

私はちょうどそれに気づいた

int i=0;
System.out.println(i++);

版画の代わりに1。 私はそれを考えたインクリメントされ、THENが印刷されました。逆のことが起きているようです。

どうして?

9 답변


12

これらはプリインクリメント演算子とポストインクリメント演算子。この動作は正確に正しいです。

  • i++元の値を返します。
  • ++i新しい値を返します。


2

するときi++次の命令までインクリメントは起こりません。これはポストインクリメントと呼ばれます。


2

++i will print 1
i++ will print 0 


2

System.out.println(i++);

最初にiの値を表示し、次にiをインクリメントする必要があります。ポストオーダーのインクリメント

  • i ++ - >ポストオーダーインクリメント
  • ++ i - >事前注文の増分


2

i++iを返してから、増分するしたがって、++の後のiです。

++iiをインクリメントしてから戻ることを意味します。したがって、iの前に++


1

  • i++=>評価はその後増加します。
  • ++i=>インクリメントしてから評価

について考えるforループ - i反復のたびに増加します。


1

++変数がインクリメント後の操作を定義した後。これは、あなたが行の他のすべてを実行し終えた後、そしてi増加します。あなたが使用した場合++i変数は表示される前にインクリメントされます


1

あなたがここで見つけることができるように:http://docs.oracle.com/javase/tutorial/java/nutsandbolts/op1.htmli ++と++ iの2つの増分演算子があります。 ++ iは、i ++がやろうと思ったことをやります。 i ++は他の目的のために使用後に値を増やします(詳細についてはリンクを見てください)


1

に与えられた値がSystem.out.println(i++);最初に0が割り当てられ、それからインクリメントされます。 あなたがやろうとするならSystem.out.println(++i);それから1が表示されます。

リンクされた質問


関連する質問

最近の質問