您的位置:首页 > 其它

关于越界问题

2016-04-08 14:06 190 查看
在Java中
 

Example:

(1)

  byte b=(byte)(-129);

  System.out.println(b);

  输出的的结果是127;

(2)

  byte b=(byte)(129);

  System.out.println(b);

  输出的的结果是-127;

 

Explanation:

  byte只能存储8位

  在转换的过程中 

  负数要先取变补 也就是 (1000001)原=(01111110)补+1=01111111=127

  正数直接取补码  也就是 (1000001)原=(11111111)补=-127;

  在Java中规定最高位为符号位 !

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: