首頁 > Java > java教程 > Java 前綴與後綴遞增/遞減:為什麼此範例中的「i」結果為 7?

Java 前綴與後綴遞增/遞減:為什麼此範例中的「i」結果為 7?

Patricia Arquette
發布: 2024-12-17 02:41:24
原創
280 人瀏覽過

Java Prefix vs. Postfix Increment/Decrement: Why Does `i  ` Result in 7 in This Example?

Java 中的前綴和後綴自增/自減運算符

理解前綴和後綴自增/自減運算符之間的區別在Java 程式設計中至關重要。本文透過一個實際範例探討了這些運算符的效果。

問題:

考慮以下程式碼片段:

int i = 3;
i++; // Postfix increment

System.out.println(i);    // Prints "4"

++i; // Prefix increment
System.out.println(i);    // Prints "5"
System.out.println(++i);  // Prints "6"
System.out.println(i++);  // Prints "6"
System.out.println(i);    // Prints "7"
登入後複製

為什麼上次呼叫 System.out.println(i)列印值7?

答案:

此程式碼的行為由字首和字尾增量運算子的語意控制:

  • 前綴增量( ):在運算元用於運算元之前遞增運算元表達式。
  • 後綴增量 ( ):在表達式中使用運算元後遞增運算元。

前綴增量:

int i = 6;
System.out.println(++i); // Prints "6"
登入後複製

i 的計算結果為 7,因為它在使用其值之前遞增 i在表達式中。因此它印出“6”並將 i 增加到 7。

Postfix Increment:

int i = 6;
System.out.println(i++); // Prints "6" (i = 7, prints 6)
登入後複製

i 計算結果為 6,因為它儲存了 i 的副本,加1 到 i,並傳回原始值。表達式列印“6”,但 i 現在是 7。

在最後一次呼叫中,System.out.println(i) 列印 i 的目前值,即 7。這是因為後綴增量運算子之前已更新至 7。

以上是Java 前綴與後綴遞增/遞減:為什麼此範例中的「i」結果為 7?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板