Java——基本数据类型自动拆箱装箱

AutoWrapper

直接上代码敲一遍

    public class AutoWrapping {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		//自动装箱规范要求:介于-128~127之间的short和int被包装到固定的对象中去
		Integer a=10;
		Integer b=10;//a,b是一个对象
		Integer c =new Integer(10);//手动申请了一个对象,值为10
		System.out.println(a==b);//t
		System.out.println(c==b);//t-----f 虽然值一样,但是不是同一个对象
		int a1 = 10;
		System.out.println(a==a1);//t  包装类和基本类型比较的时候,先将包装类拆成基本数据类型再进行比较
		System.out.println(a.equals(a1));//f-----t   equals方法比较的是同一类对象的值
		System.out.println(a.equals(b));//t
		System.out.println(c.equals(b));//t
		
		Integer a2=1000;
		Integer b2=1000;
		Integer c2 =new Integer(1000);
		System.out.println(a2==b2);//t----f
		System.out.println(c2==b2);//t----f
		int a3 = 1000;
		System.out.println(b2==a3);//t
		System.out.println(a2.equals(a3));//f----t
		System.out.println(a2.equals(b2));//t
		System.out.println(c2.equals(b2));//t
		
		//ArrayList<int> arr = new ArrayList<>(); 报错,参数必须是引用类型,所以引入包装类
		ArrayList<Integer> arrayList = new ArrayList<Integer>();
		arrayList.add(333); //自动装箱,相当于 arrayList.add(Integer.valueOf(3))
		int test = arrayList.get(0);//自动拆箱,相当于int i = arrayList.get(0).intValue();
		
		//包装器还可以用来将某些数字字符串转换成数值
		int x = Integer.parseInt("555");
		System.out.println(test + "  " + x);
	}

}

输出:

true
false
true
true
true
true
false
false
true
true
true
true
333  555

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值