6个关于Java包装类拆箱和装箱的判断题,你能做对几个?

虽然 Java 语言是典型的面向对象编程语言,但其中的八种基本数据类型并不支持面向对象编程,基本类型的数据不具备“对象”的特性——不携带属性、没有方法可调用。为此,Java为每种基本数据类型分别设计了对应的类,称之为包装类(Wrapper Classes)。

  • 装箱(Boxing):由基本类型向对应的包装类转换,例如:Integer a = 2;
  • 拆箱(Unboxing):由包装类向对应的基本类型转换,例如:int v = a.intValue();

闲言少叙,问题如下:

  1. new Integer(2) == 2 ?
  2. new Integer(2) == new Integer(2) ?
  3. Integer.valueOf(2) == Integer.valueOf(2) ?
  4. Integer.valueOf(1024) == Integer.valueOf(1024) ?
  5. Integer.valueOf(2).intValue() == 2 ?
  6. new Integer(2).equals(new Integer(2)) ?

测试代码:

public class BoxingDemo {
    public static void main(String[] args) {
        System.out.println("new Integer(2) == 2 ?\t" + (new Integer(2) == 2));
        System.out.println("new Integer(2) == new Integer(2) ?\t" + (new Integer(2) == new Integer(2)));
        System.out.println("Integer.valueOf(2) == Integer.valueOf(2) ?\t" + (Integer.valueOf(2) == Integer.valueOf(2)));
        System.out.println("Integer.valueOf(1024) == Integer.valueOf(1024) ?\t"
                + (Integer.valueOf(1024) == Integer.valueOf(1024)));
        System.out.println("Integer.valueOf(2).intValue() == 2 ?\t" + (Integer.valueOf(2).intValue() == 2));
        System.out.println("new Integer(2).equals(new Integer(2)) ?\t" + (new Integer(2).equals(new Integer(2))));

    }
}

运行结果:
在这里插入图片描述
怎么样?你做对了吗?欢迎留言~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

James Shangguan

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值