站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2SE 专题为什么等于11??感谢

为什么等于11??感谢

摘要: 为什么等于11??感谢


public class abc {

/**
* @param args
*/
public static void main(String[] args) {
byte b;
int i = 267;
b = (byte) i;
System.out.println(b);
}

}



267的二进制:1 0000 1011
byte的取值范围:-256~255。
但是267的值不在byte的取值范围,因此只取二进制的最后8位数:0000 1011 = 11。



在机器里都是2进制的数,你把它他们都转化为2进制后,
再看看就是正确的答案了。


溢出了


usxue(尘飞扬)
说的对,就是这样



对256取模


这个倒没有出现过哈


溢出,常见!!!


byte最大255
你的267肯定溢出了


jf


楼上说得很清楚了...就是注意一下数据的类型和范围..


↑返回目录
前一篇: thinking in java 和 JAVA 2核心技术 初学者到底应该选择哪本好!!!!!!!
后一篇: 关于java的基础与J2EE的关系