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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 陈军 中级黑马   /  2012-10-16 11:18  /  1045 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

先来看几个例子
  int a=1;
  byte b1=1+a;//error
  byte b2=1+1;//ok
  byte b3=1+127;//error
  byte b4=1+126;//ok
  
  int x=1l+2l;    //error,1,2为long型
  
  int b=1;
  short s1=2+b;//error
  short s2=3+2;//ok
  
  int c=2.3f+3.2f;//or
  
  float d=3.3+3.2;//error


总结: 虚拟机对默认类型int型有优待:当右边类型都是int型,而且只做一次运算(变量赋值已经算一次运算了),
            虚拟机会先尝试窄转换,如果超出左边类型范围就报错,没超出就通过。
            但是默认类型double和其他基本类型就没有这样的待遇了。
         
         

评分

参与人数 1技术分 +1 收起 理由
韩军博 + 1 很给力!

查看全部评分

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马