2

このコードのスニペットが出力を与える理由を知りたいのですが、112
この最後の桁2はどのように作成されていましたか?

public static void main(String[] args) {
    int i = 0;
    System.out.print(++i);
    System.out.print(i++);
    System.out.print(i);

なぜこれが起こるのですか?

4

7 に答える 7

2

このコードを実行すると:

public static void main(String[] args) {
    int i = 0;                //i=0;
    System.out.print(++i);    // increments i to i=1, and prints i
    System.out.print(i++);    // prints i and then increments it to i=2
    System.out.print(i);      // prints i, i.e. 2
}
于 2013-05-12T10:44:41.847 に答える
2

ポストまたはプリインクリメント演算子を使用すると、値が増加します。

後置インクリメント演算子 ( i++) は、最初に値を割り当ててからインクリメントします。プレインクリメント演算子 ( ++i) は、最初にインクリメントしてから値を割り当てます。どちらも次のように動作します。

int i=0;
i=i++;
System.out.println(i); //1
i=++i;
System.ou.println(i); //1
于 2013-05-12T10:27:58.557 に答える