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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© lshaizj 中级黑马   /  2015-4-26 19:34  /  640 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

byte a=9;
byte b=8;
byte c=(byte)(b+a);
两个byte型的变量运算 会被自动提升成int类型,
那连个char类型的变量运算会被提升成什么类型呢?

3 个回复

倒序浏览
(1)当运算符为取正(+)、取负(-)或按位取反(~)时,如果操作数为byte、char或short,则先被转换为int,再参与运算。
(2)当运算符为自增(++)或自减(--)时,如果操作数为byte,short或char,则不用先被转换为int,而是直接参与算术运算,且运算结果类型也不变。
回复 使用道具 举报
Cat 发表于 2015-4-26 19:48
(1)当运算符为取正(+)、取负(-)或按位取反(~)时,如果操作数为byte、char或short,则先被转换为int ...

谢谢:)。也就是说会变成型的?
回复 使用道具 举报
lshaizj 发表于 2015-4-26 19:55
谢谢。也就是说会变成型的?

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