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

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

avg_1用了double型,怎么后面取平均值還是直接取得整數,沒有小數。把sum_1換成double類型才出現小數,這是為什么?

sum_1=(i=i<i++){
????System..println(+(i+)+)score_1=Scanner(System.).nextInt()sum_1+=score_1}
avg_1avg_1=sum_1/System..println(+avg_1)

https://img1.sycdn.imooc.com/65d6147800013f7c17080849.jpg

正在回答

1 回答

這是因為在進行除法運算時,如果除數和被除數都是整數類型,那么結果也會是整數,會直接舍去小數部分。 比如,`int sum_1 = 5; int count_1 = 2; double avg_1 = sum_1 / count_1;` ,這里 `sum_1` 和 `count_1` 都是整數,做除法 `sum_1 / count_1` 的結果也是整數,即 2 。 而當把 `sum_1` 換成 `double` 類型,比如 `double sum_1 = 5.0; int count_1 = 2; double avg_1 = sum_1 / count_1;` ,此時因為有一個操作數是 `double` 類型,所以除法運算會按照浮點數的規則進行,得到有小數的結果 2.5 。 在 Java 中,如果想得到有小數的平均值,通常會把參與運算的數值都定義為 `double` 類型,像這樣: ```java double sum = 5.0; int count = 2; double avg = sum / count; ``` 或者先把整數轉換為 `double` 類型再做除法,像這樣: ```java int sum = 5; int count = 2; double avg = (double)sum / count; ``` 您明白了嗎?

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

舉報

0/150
提交
取消

avg_1用了double型,怎么后面取平均值還是直接取得整數,沒有小數。把sum_1換成double類型才出現小數,這是為什么?

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

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

幫助反饋 APP下載

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

公眾號

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