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

為了賬號安全,請及時綁定郵箱和手機立即綁定

求大神看我代碼

? ?int one = 10 ;

? ? ? ? int two = 20 ;

? ? ? ? int three = 0 ;

? ? ? ? int a=one+two,b=a+=one,c=b-=one,

? ? ? ? d=c*=one,e=d/=one,f=e%=one;

? ? ? ? System.out.println(a+"\n"+b+"\n"+c+"\n"+d+"\n"+e+"\n"+f);

顯示結果是

40
30
300
30
0
0

很是納悶,怎么后面多了個0,前面少了個30


正在回答

2 回答

在你給后面的變量賦值時改變了前面的變量的大小。

比如a=one+two=30,當你給b賦值時,用了b=a+=one,這個時候先計算a+=one,意思是a=a+one=40,這個時候a=40,然后b=a+=one=40,所以當你給b賦值完后,結果是這樣的,a=b=40。依次類推。

4 回復 有任何疑惑可以回復我~
#1

慕工程3935333

有道理,想一想確實是這樣.
2016-11-20 回復 有任何疑惑可以回復我~
#2

qq_流年墜繁花_04322302 提問者

膜拜
2016-11-20 回復 有任何疑惑可以回復我~
System.out.println(+a+"\n"+b+"\n"+c+"\n"+d+"\n"+e+"\n"+f);再試試


0 回復 有任何疑惑可以回復我~
#1

qq_流年墜繁花_04322302 提問者

就a前面多了個+,結果還是一樣。
2016-11-20 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

求大神看我代碼

我要回答 關注問題
微信客服

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

幫助反饋 APP下載

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

公眾號

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