Java基础数据类型包装类的高频区间的数据缓存

  

一、Java的基础数据类型的包装类:整数,长,双,浮动,布尔,字节,短,性格。

  

二、高频缓存区

  
      <李>   

    其中双和浮动没有缓存,其他类型都有高频缓存区间。其高频缓存区间的缓存范围是:
    布尔:使用静态决赛,就会返回静态值
    字节:-128 ~ 127年
    短:-128 ~ 127年
    字符:0 ~ 127
    长:-128 ~ 127年
    整数:-128 ~ 127年

      李   <李>   

    如果所使用的包装类的值在这个缓存区间内,就会直接复用已有对象,在缓存区间之外的数值会重新在堆上产生。所以在判断是否相等时不要用“==?用等于,否则会出现以下情况:
    整数i1=127;
    整数i2=127;
    i1和i2→==true

      
     <代码>整数i3=128;
      整数预告=128;
      i3==预告→假 
      李   <李>整数是唯一一个可以修改缓存范围的包装类。在VM选项加入参数:- xx: AutoBoxCacheMax=555即将缓存区间的最大值改为555。   

Java基础数据类型包装类的高频区间的数据缓存