byte类型变量相加和为byte类型 超出范围怎么表示
bytea=67;byteb=89;bytec=(byte)(a+b);System.out.println(c);输出值为-100;请问是怎么算得。...
byte a=67;
byte b=89;
byte c=(byte)(a+b);
System.out.println(c);
输出值为-100;请问是怎么算得。 展开
byte b=89;
byte c=(byte)(a+b);
System.out.println(c);
输出值为-100;请问是怎么算得。 展开
3个回答
展开全部
可以采用以下的办法:
byte a=200,b=252,c=215;
int x,y;
printf("%d\n",(int)a+b); //方法1,强制类型转换后,相加输出
x=a; //方法2,先赋值,自动类型转换
x+=b;
y=(int)a+c; //方法3,强制类型转换后,相加后再赋值
byte a=200,b=252,c=215;
int x,y;
printf("%d\n",(int)a+b); //方法1,强制类型转换后,相加输出
x=a; //方法2,先赋值,自动类型转换
x+=b;
y=(int)a+c; //方法3,强制类型转换后,相加后再赋值
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2011-10-30
展开全部
因为BYTE是单字节的,占了8位,应该是用二进制来做的吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询