作者janyfor (你哪位ㄚ)
看板java
标题Re: [问题] 一个简单的问题= =
时间Fri Jul 27 20:17:12 2007
※ 引述《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