A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 潘际昌 中级黑马   /  2013-11-26 22:06  /  1096 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

求大手指点下 怎么把byte提升为int型

评分

参与人数 1黑马币 +3 收起 理由
狼王 + 3 多来论坛提问哈

查看全部评分

5 个回复

倒序浏览
强转不行?
byte b = 1;
int a = (int)b;不行?

我以为是那个自动转型的题呢

有个题是这样的

byte b1 = 1;
byte b2 = 2;
byte b3 = b1 + b2;报错

因为b1 + b2两个byte相加会自动转成int,所以把int类型的变量赋给b3报错了

评分

参与人数 1技术分 +1 收起 理由
狼王 + 1 谢谢你的回答

查看全部评分

回复 使用道具 举报
这个问题问的纠结啊,没深究过,网上看了看,说byte是8个比特位,int是32个比特位,byte转成二进制后,转成补码,前面补1,补齐32位,然后转成int。我说的不清楚,具体还是得网上找,不过,我觉得没有深究的必要吧。

评分

参与人数 1黑马币 +6 收起 理由
狼王 + 6 不错哦

查看全部评分

回复 使用道具 举报
byte提升为int??

前面加(byte)就可以强转了

评分

参与人数 1黑马币 +3 收起 理由
狼王 + 3 不错哦,谢谢你的回答

查看全部评分

回复 使用道具 举报
向阳泪无痕 来自手机 高级黑马 2013-11-27 08:58:18
报纸
byte b;
Byte By = new Byte();
int i = By.intVlaue();//返回int类型

评分

参与人数 1黑马币 +6 收起 理由
狼王 + 6 不错哦,谢谢你的回答

查看全部评分

回复 使用道具 举报
  1. package cn.itcast.binarytransferdemo;

  2. public class ByteToInt {
  3.         public static void main(String[] args) {
  4.                 byte b = 5;
  5.                 int i = b;        //直接将b的值赋给i,没问题啊,自动向上转型的
  6.                 System.out.println(i);
  7.         }

  8. }
复制代码

评分

参与人数 1黑马币 +12 收起 理由
狼王 + 12 谢谢回答

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马