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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

/**
* JDK1.5版本以后出现的新特性。
*/

public class IntegerDemo2 {
        public static void main(String[] args) {

                /**
                 * 自动装箱,语句Integer x = 4;相当于Integer x = new Integer(4);
                 */
                Integer x = 4;

                /**
                 * x+2: x进行自动拆箱,变成成了int类型,和2进行加法运算,再将和进行装箱赋给x, 而运算中的x其实是x.intValue()
                 */
                x = x + 2;

                Integer m = 128;
                Integer n = 128;

                sop("m==n:" + (m == n));// false,不在byte表示范围,m、n会指向两个不同的对象

                Integer a = 127;
                Integer b = 127;
                /**
                 * 结果为true,因为a和b指向了同一个Integer对象:
                 * 当数值在byte范围内容,对于新特性,如果该数值已经存在,则不会在开辟新的空间,此时a和b指向同一个对象。
                 */
                sop("a==b:" + (a == b));
        }
        public static void method() {
                Integer x = new Integer("123");
                Integer y = new Integer(123);

                sop("x==y:" + (x == y));
                sop("x.equals(y):" + x.equals(y));
        }
        public static void sop(String str) {
                System.out.println(str);
        }
}


0 个回复

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