黑马程序员技术交流社区

标题: 自动装箱问题 [打印本页]

作者: 天下    时间: 2013-10-20 00:04
标题: 自动装箱问题
本帖最后由 天下 于 2013-10-20 22:02 编辑

why???为什么打印的是false,   而不是ture
  1. public static void main(String[] args) {
  2.                 // TODO Auto-generated method stub
  3.                
  4.                 Double d1=17.0;
  5.                 Double d2=17.0;
  6.                
  7.                 System.out.println(d1==d2);
复制代码

作者: 张俊生    时间: 2013-10-20 10:49
本帖最后由 张俊生 于 2013-10-20 10:51 编辑
  1. package itcast;

  2. public class Test5 {

  3.         /**
  4.          * @param args
  5.          */
  6.         public static void main(String[] args) {
  7.                 // TODO Auto-generated method stub
  8.         
  9.             
  10.             Short s1=128;
  11.             Short s2=128;
  12.             
  13.             Byte b1=17;
  14.             Byte b2=17;
  15.             
  16.             Integer i1=17;
  17.             Integer i2=17;
  18.             
  19.             Float f1=17.0f;
  20.             Float f2=17.0f;
  21.             
  22.             Double d1=17.0;
  23.             Double d2=17.0;
  24.          
  25.             
  26.             System.out.println(s1==s2);
  27.             System.out.println(b1==b2);
  28.             System.out.println(i1==i2);
  29.             System.out.println(f1==f2);
  30.             System.out.println(d1==d2);
  31.             
  32.         }

  33. }
复制代码
结果

false
true
true
false
false
这说明只有在整数-128~127之间才会出现,再次调用不用开辟新空间,并且指向同一个地址
作者: 天下    时间: 2013-10-20 22:00
张俊生 发表于 2013-10-20 10:49
结果

false

那就是说,新特性支持所有基本数据类型的自动装箱,缓冲机制只有整数类型-128到127咯
作者: 张俊生    时间: 2013-10-21 09:03
天下 发表于 2013-10-20 22:00
那就是说,新特性支持所有基本数据类型的自动装箱,缓冲机制只有整数类型-128到127咯 ...

可以这么理解吧,




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2