java的一个程序如下,输出结果为什么为—127呢?为什么是负数呢?怎么算出来的呢?请详细解释一下,多谢

public class Work
{
public static void main(String[]args)
{
byte b=(byte)129;
System.out.println(b);
}
}

byte范围 -128~127之间。
当数字为127的时候,不溢出,相当于最大的127。128的时候,溢出,相当于最小的负数,也就是-128。
所以,129就是-127
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-10-20
129 存在一个字节中。 其首位便是符号位,确实值应该是 -127。
你可以将 129 写成原码形式,一眼就看出来了。
第2个回答  2013-10-20
类型数据溢出,自己可以看看数据类型溢出方面一看就知道怎么回事了
第3个回答  2013-10-20
越界了

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网