java 中的拆箱和装箱

本文深入探讨Java中装箱和拆箱的概念,包括手动和自动装箱拆箱的过程,展示了如何将基本数据类型与包装类类型进行转换,并解释了这一机制在Java 5之后的自动特性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

package ktest;

public class K1 {
	public static void main(String[] args) {
		int a = 10;  //声明变量
		Integer i  = new Integer(a);//手动装箱--法1
		Integer j  = Integer.valueOf(a);//手动装箱--法2
		int k = Integer.parseInt(j.toString());//手动拆箱--法1
		int p = j.intValue();////手动拆箱--法2
		System.out.println(k);
		System.out.println(p);
		
		
		//自动拆装箱
		//生成一个数值为20的Integer对象
		Integer b = 20;  //自动装箱--相当于Integer.valueOf(int)方法
		int c = b; //拆箱--相当于Integer.intValue()方法。
		
		/*
		 * 装箱就是  自动将基本数据类型转换为包装器类型;
		 * 拆箱就是  自动将包装器类型转换为基本数据类型
		 * 装箱不改变值,只改变为包装类类型Integer.valueOf(a)
		 * 拆箱可以获取各种基类型的值i.floatValue()、i.doubleValue()、、、
		 * 
		 * java5之后可以自动拆箱和装箱
		 * 装箱过程是通过调用包装器的valueOf方法实现的,
		 * 而拆箱过程是通过调用包装器的 xxxValue方法实现的
		 */
		System.out.println("装箱后的类型"+i.getClass());
		System.out.println(j.getClass());
		System.out.println(a);
		System.out.println(i);
		System.out.println("拆箱为float "+i.floatValue());
		System.out.println("拆箱为double "+i.doubleValue());
		
		System.out.println("拆箱前的类型"+b.getClass());
		System.out.println(b);
		System.out.println(c);
	}
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

ThinkPet

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

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

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

打赏作者

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

抵扣说明:

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

余额充值