234/235包装类装箱与拆箱和自动拆箱自动装箱
包装类-拆装箱
基本类型与对应的包装类对象之间,来回转换的过程称为"装箱“与"拆箱”:
装箱:从基本类型转换为对应的包装类对象。
拆箱:从包装类对象转换为对应的基本类型。
装箱:把基本类型的数据,包装到包装类中(基本类型的数据->包装类)
构造方法;
Integer(int value)构造一个新分配的Integer对象,它表示指定的 int值。
Integer(String s)构造一个新分配的Integer对象,它表示String参数所指示的 int值。
传递的字符串,必须是基本类型的字符串,否则会抛出异常“100”正确“a”抛异常
静态方法:
static Integer value0f(int i)返回一个表示指定的int 值的 Integer 实例。
static Integer value0f(String s)返回保存指定的 string 的值的Integer对象。
拆箱:在包装类中取出基本类型的数据(包装类->基本类型的数据)
成员方法:
int intValue()以int类型返回该Integer的值。
public static void main(String[] args) {
//装箱:把基本类型的数据,包装到包装类中(基本类型的数据->包装类)
// 构造方法
Integer in1 = new Integer( 1);//方法上有横线,说明方法过时了system.out.println(in1);//1重写了tostring方法
Integer in2 = new Integer("1");
System.out.println(in2);
//静态方法
Integer in3 = Integer.valueOf(1);
System.out.println(in3 ) ;
//Integer in4 = Integer.value0f("a" ) ;//NumberFormatException数字格式化异常
Integer in4 = Integer.valueOf("1");
System.out.println(in4) ;
//拆箱:在包装类中取出基本类型的数据(包装类->基本类型的数据)
int i = in1.intValue();
System.out.println(i);
}
//装箱是指:将基本类型数据直接赋值给包装类;其中编译器会自动将其数值直接转化为包装类;
Integer n3=100;
//Integer n3=Integer.valueOf("100");
//拆箱是指:将一个包装类直接赋值给基本的数据类型;
Integer n4=200;
int n5=n4;
//int n5=n4.intValue();
//装箱 int->Integer
int n1 = 100;
Integer integer = new Integer(n1);
Integer integer1 = Integer.valueOf(n1);
//拆箱
int i = integer.intValue();
包装类-自动装箱与自动拆箱
自动装箱与自动拆箱:
基本类型的数据和包装类之间可以自动的相互转换了DK1.5之后出现的新特性
//自动装箱:直接把int类型的整娄赋值给包装类
//Integer in = 1;就相当于Integer in = new Integer(1);
Integer in = 1;
/*
自动拆箱:in是包装类,无法直接参与运算,可以自动转换为基本类型的数据,再参与计算in + 2;就相当于in.intvalue( ) + 3 = 3;
in = in + 2;就相当于in = new Integer(3)自动装箱*/
in = in + 2;
System.out.println(in);
// ArrayList集合无法直接存储整数,可以存储Integer包装类
ArrayList<Integer> list = new ArrayList<>();
list.add(1);//自动装箱List.add( new Integer(1));
//自动装箱:int-->Integer
Integer i1=12;
System.out.println(i1);
//自动拆箱:Integer-->int
Integer i2=new Integer(12);
int num=i2;
System.out.println(num);
自动装箱
自动拆箱
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通