函数调用需要类型转换,将short数据类型变量作为参数

每当我使用字节或短数据类型作为方法参数时,在方法调用上,我需要显式地转换我传递给这些方法的值。 为了更好地解释:
void foo(short x)
{}
void main() {foo((short)32);}
如果我在这里不使用short,则会生成警告。
method foo in class px cannot be applied to given types
required: byte
found: int
我怎样才能让它变得更好?     
已邀请:
没有出路。 Java没有办法编码
byte
short
文字。任何数字文字都是
int
值,并且在没有强制转换的情况下将int转换为short会始终产生警告。     
整数文字隐式具有类型
int
,并且从
int
转换为
byte
short
可能会丢失信息,因此需要显式转换。 所以除非你真的需要,否则不要使用
byte
short
,这种情况很少见。     

要回复问题请先登录注册