亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Java 中的自增運算符可以使用什么類型的操作數?

Java 中的自增運算符可以使用什么類型的操作數?

瀟瀟雨雨 2023-07-19 16:29:37
我不知道如果在 Java 中的表達式上應用增量運算符會發生什么。int ai[] = new ai[10];ai[0]++;// ***class Car {  public int yearMade = 0;}class Person {  public Car myCar = new Car();}Person p = new Person();p.myCar.yearMade++;您可以按照第一個示例所示的方式遞增數組的元素嗎?您能否按照我在第二個示例中所示的方式增加類中的字段(我確實了解封裝和 getters/setters,我的問題是面向語法語義的)?我記得 C/C++ 的時代。例如,p -> x++ 曾經存在問題。使用增量或減量時,有時需要將復雜表達式括在括號中。感謝您的任何提示。
查看完整描述

1 回答

?
猛跑小豬

TA貢獻1858條經驗 獲得超8個贊

您的兩個問題的答案都是“是的,您可以”。和p.myCar.yearMade都是ai[0]變量(分別是實例變量和局部變量),因此可以用作這四個運算符中任何一個的操作數。

4.12.?變量

變量是一個存儲位置,并且具有關聯的類型,有時稱為其編譯時類型,即原始類型(第 4.2 節)或引用類型(第 4.3 節)。

變量的值可通過賦值 (§15.26) 或前綴或后綴 ++(遞增)或 --(遞減)運算符進行更改(§15.14.2、§15.14.3、§15.15.1、§15.15.2) )。

...

15.14.2。后綴自增運算符 ++

在運行時,如果操作數表達式的求值突然完成,則后綴增量表達式也會出于同樣的原因突然完成,并且不會發生增量。否則,將值 1 添加到變量的值中,并將總和存儲回變量中。在相加之前,對值 1 和變量的值執行二進制數值提升(第 5.6.2 節)。如有必要,在存儲變量之前,可以通過縮小原始轉換(第 5.1.3 節)和/或對變量的類型進行裝箱轉換(第 5.1.7 節)來縮小總和。后綴增量表達式的值是存儲新值之前變量的值。


查看完整回答
反對 回復 2023-07-19
  • 1 回答
  • 0 關注
  • 119 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號