读书人

JAVA基础 byte类型的有关问题

发布时间: 2012-11-03 10:57:44 作者: rapoo

JAVA基础 byte类型的问题
public static void main(String args[]){
byte A=(byte)=4096;
system.out.println(A);\\为什么A的值是10
}


[解决办法]
byte 最大127 最小-128
所以128 byte值就是-128 因此值会在-128-127之间游荡..

[解决办法]
定义了一个 byte类型的变量 A,byte的取值范围是-128—127
[解决办法]
楼主的 代码错了哦
public static void main(String[] args) {
byte A =(byte)4096;//将4096 int强制转换成byte类型
System.out.println(a);//输出为0
}
因为byte的取值范围是-128~127 即256一个循环
4096=256*16
则4096在byte类型中其实就相当于0 强转成byte类型过后为0再赋值给A 所以A的值为0
输出应该是0 楼主试试看
[解决办法]
4096为正溢出,需要加上n*负上限来保证不会溢出,这里负上限为-128,即4096一直加上-128直到得到的值在-128到127之间,算出来结果为0

读书人网 >J2SE开发

热点推荐