本帖最后由 yangnianbing110 于 2011-06-24 11:16:10 编辑

解决方案 »

  1.   

    jdk5以后有自动拆装箱
    这里就是自动拆箱的结果
      

  2.   

    一般来说,对象类型是不可以用>,<这些符号来比较大小的,但是数值类型的包装器类,比如:Integer、Byte,Float,Double等可以通过自动拆箱,转化成int,bye,float,double,就可以进行比较了。
      

  3.   

    >和<的时候是比较的值啊,只有等于的时候才比较内存地址是不是一样,所以会执行循环里面的,条件都满足
      

  4.   

    Integer i=new Integer(0);
    Integer j=new Integer(0);>= <=是运算符。!=也是运算符。但是。在这里!=比较的是两个对象。Integer i=0;
    Integer j=0; 
    如果i 和 j  是两个变量的话。!=就会去比较大小的。而不是比较对象。你写的。分明是给2个对象初始化赋值的。所以。他会认为你在比较两个对象。
      

  5.   

    JDK5.0中有了自动打包和解包功能,就是可以默认将一些对象类型比如:Integer、Byte,Float,Double等转换为基本的数据类型。了解了这一机制就能很好理解该题了。