程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> java-新手問題 JAVA for語句

java-新手問題 JAVA for語句

編輯:編程綜合問答
新手問題 JAVA for語句

可能有點幼稚,不過實在是不明白……敢問下面這個語句的具體執行過程是什麼樣子的?

for (i = 0, j = 0; i < 10; i++) j += j++;

最佳回答:


你好,你這段代碼是沒有太多實際意義的,個人認為你是寫錯了吧,從程序運行來看,結果全為0.如圖圖片說明;稍微改改就好了,j += j++;改成j += ++j;執行過程如下(以修改後的函數為例):
① i = 0, j = 0 ——》判斷 i 是否<10 ——》是——》++j——》將++j的值1帶入計算式j +=++j,此時j=1;
②i++ ——》判斷 i 是否<10 ——》i=1,是——》++j——》將++j的值2帶入計算式j +=++j,此時j=3;
③余下省略。。。

此題因注意
(1)a= j++ 和 b=++j 的區別,假設 j=1;那麼程序運行後,兩者都有 j=2,但前者 a=1,後者 b=2 。
見圖圖片說明
圖片說明
(2)for ( A ; B ; C ){ D }執行順序為A——》判斷是否滿足B——》滿足則執行D(不滿足則循環結束)——》C——》判斷是否滿足B滿足則執行D(不滿足則循環結束)——》。。。。
修改代碼後程序運行如圖圖片說明

希望能幫到你,有什麼問題可以繼續問我。

suiqiji206
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved