国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

java中i++ 與 i=i++的區別

2019-11-14 10:34:33
字體:
來源:轉載
供稿:網友

記得大學剛開始學C語言時,老師就說:自增有兩種形式,分別是i++與++i,i++表示的是先賦值后加1,++i是先加1后賦值。我們來看下下面的例子:

public class Client { public static void main(String[] args) { int count =0; for(int i=0; i<9; i++) { count = count++; } System.out.PRintln(count); }}

這個程序輸出的count等于幾?是count自加10次嗎?答案等于10?可以非常肯定地告訴你,答案錯誤!運行結果是count等于0.為什么呢?

count++是一個表達式,是有返回值的,它的返回值就是count自增前的值,java對于自增是這樣處理的:先把count的值(注意是值,不是引用)拷貝到一個臨時變量區,然后對count變量加1,最后返回臨時變量區的值。程序第一次循環時的詳細處理步驟如下: 步驟1:JVM把count的值拷貝到臨時變量區 步驟2:count值加1,這時候count的值是1 步驟3:返回臨時變量區的值,0 步驟4:返回值賦值給count,此時count值被重置成0.

解決方法很簡單,只需把“count = count++”改成count++.


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 昌平区| 大宁县| 平谷区| 措美县| 中牟县| 东丽区| 崇文区| 安远县| 三明市| 山阴县| 嘉黎县| 漠河县| 会理县| 金湖县| 新巴尔虎右旗| 柞水县| 南平市| 黄平县| 曲阳县| 中西区| 河间市| 宜阳县| 商洛市| 永靖县| 盘山县| 博野县| 固阳县| 西丰县| 准格尔旗| 青阳县| 东丰县| 庆云县| 泸溪县| 卢湾区| 襄垣县| 西宁市| 伊川县| 天台县| 丰宁| 祁东县| 丽水市|