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

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

輸出的結果是什么?

輸出的結果是什么?

趙明明123 2016-04-02 14:51:11
public class Answer {?public static void main(String[] args) {? ? int score = 20;? ?Answer ?ans= new Answer();? ?? ?ans.add(score);? ?System.out.println(" main: score = " + score);?}?void ?add(int score) {? ?System.out.println(" add: score=" + score++);?}}
查看完整描述

7 回答

?
qq_執手藍天丶_0

TA貢獻1條經驗 獲得超1個贊

main=20;

add=20;

score++是執行完后面語句后才加1;

查看完整回答
1 反對 回復 2016-04-03
?
趙明明123

TA貢獻1條經驗 獲得超1個贊

本題考查的是Java的方法參數傳遞。在Java中方法參數傳遞只有值傳遞,其特點如下: 1)基本數據類型傳遞的是值本身。 2)引用數據類型傳遞也是引用的值,是對象的地址,而不是對象本身。 本題中,首先要明白main方法中的局部變量score,和add方法的形參score在棧內存中是兩個變量,當調用add方法時,是把main方法中局部變量score的值20賦值給add方法的形式參數score,所以當形參score在add方法中發生變化時不會影響到main方法中局部變量score的值。 本題運行過程如下: 1.從main方法的第一行開始,定義并初始化局部變量score。 2.實例化Answer類的對象ans,調用add方法,將main方法中的score的值賦值給形參score,此時,形參score的值為20。 3.計算表達式score++的值。計算后,score++表達式的值為20,score的值變為21。此處輸出的是score++表達式的值,該值為20。 4.由于形式參數score的改變不會影響main方法中score的值,故main方法中輸出score仍然為20。

查看完整回答
1 反對 回復 2016-04-02
  • 夜雪千寒
    夜雪千寒
    請問score++表達式的值為什么為20???
  • 羽莎7
    羽莎7
    score++表示score=score+1;計算步驟 1.先將20賦值給左邊的score;2.將原來的score(20)+1,變量score新的值為21. 注意score++和++score的區別
  • 夜雪千寒
    夜雪千寒
    謝謝你
?
慕斯2125595

TA貢獻3條經驗 獲得超0個贊

add: score=21

main: score =20

查看完整回答
反對 回復 2016-04-02
?
慕斯2125595

TA貢獻3條經驗 獲得超0個贊

21

20

查看完整回答
反對 回復 2016-04-02
?
慕粉3133796

TA貢獻2條經驗 獲得超0個贊

?add: score=20

?main: score = 20


查看完整回答
反對 回復 2016-04-02
?
1525155750

TA貢獻2條經驗 獲得超0個贊

?add: score=20

?main: score = 20


查看完整回答
反對 回復 2016-04-02
  • 7 回答
  • 0 關注
  • 2070 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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