包装类
1、包装类是八种基本数据类型相应的引用类型
基本数据类型 | boolean | char | byte | short | int | long | float | double |
包装类 | Boolean | Character | Byte | Short | Integer | Long | Float | Double |
2、包装类类型、基本数据类型相互转换
(1)装箱:基本数据类型 -> 包装类类型
(2)拆箱:包装类类型 -> 基本数据类型
(3)JDK 5 版本之前,手动装箱、拆箱
(4)JDK 5(包括 JDK 5)版本之后,自动装箱、拆箱
3、以 Integer 为例
(1)手动装箱、拆箱
Integer integer1 = new Integer(1);
Integer integer2 = Integer.valueOf(2);
int i1 = integer1.intValue();
int i2 = integer2.intValue();
(2)自动装箱、拆箱
Integer integer3 = 3;//底层:Integer integer3 = Integer.valueOf(3);
int i3 = integer3;//底层:Integer i3 = integer3.valueOf();
4、Byte、Short、Integer、Long 创建机制
(1)new 类名(数值):直接创建对象
(2)类名.valueOf(数值):-128 ~ 127 范围之间直接返回池(数组)中的对象,超出范围
5、比较
(1)基本数据类型 == 基本数据类型,比较值
(2)基本数据类型 == 包装类型,在比较前会先把包装类型拆箱成基本数据类型,然后比较值
(3)包装类型 == 包装类型,比较引用,即是否同一对象
(4)包装类.equals(包装类型),先比较是否为同一类型,再比较值
(5)包装类.equals(基本数据类型),基本数据类型自动装箱,比较是否为同一类型,再比较值
包装类类型、String 类型相互转换(以 Integer 为例)
1、包装类类型 -> String 类型
Integer integer = 1;
String str1 = integer + "";
String str2 = integer.toString();
String str3 = String.valueOf(integer);
2、String 类型 -> 包装类类型
String str = "1";
Integer integer1 = Integer.parseInt(str);//字符串先转成基本数据类型,再自动装箱
Integer integer2 = new Integer(str);//利用包装类的构造器
Integer integer3 = Integer.valueOf(str);//底层:parseInt(),返回基本数据类型,再手动装箱
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战