Re: [問題] 一個簡單的問題= =
※ 引述《ruru1212 (老牛)》之銘言:
: 請問一下,這是一個簡單的問題,可是小弟就是百思不得其解
: short a,b,c;
: a=1;
: b=2;
: c=a+b;
: 為什麼會錯誤呢?
: short不是可以包括-32768~32767之間嗎?
: 那小弟不過只是算了這麼簡單的數怎麼就不行了呢?
: 可以請知道的大大講一下原理嗎?
: 雖然很簡單,但是想了很久QQ
: 感激不盡!
a.java:10: possible loss of precision
found : int
required: short
c = (short)a + b;
^
1 error
看編譯的結果是出現失真
a + b => 運算完型態是 int
c = (short) (a + b) // 作個 type casting 吧
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 210.209.196.59
討論串 (同標題文章)