作者demythig (demy)
看板java
标题[问题] 简单的byte运算
时间Sun Mar 23 23:42:48 2008
public class ByteAdd {
public static void main(String[] args)
{
byte i=1;
byte j=2;
i+=j;
//i=i+j; ←请问为什麽没办法做运算,ide显示type mismatch
//i= j- i; 但如果byte i, j 改成 int i, j就能运算
}
}
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 118.170.71.170
1F:推 gzliu36:0和1? 03/23 23:44
2F:→ demythig:byte的范围不是-128~127难道不是吗@@? 03/23 23:44
3F:推 tkcn:表面上看起来是两个 byte 做运算,但实际上是先转成两个 int 03/23 23:47
4F:→ demythig:改成short也是不行,请问一定要int才能运算吗?在书上 03/23 23:47
5F:推 tkcn:i = (byte)i+j; 03/23 23:51
6F:→ tkcn:喔写错 应该是 i = (byte)(i+j) 两个int运算完的结果还是int 03/23 23:52
7F:→ demythig:感谢t大 03/23 23:56
8F:推 LPH66:只要记得java里比int小的东西运算完後自动是int就行了 03/23 23:58
9F:→ LPH66:像是byte char short都是这样 03/23 23:59