Java包装类
2022/3/29 20:26:33
本文主要是介绍Java包装类,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
包装类
Java中的基本数据类型对应的包装类使其对象化,具有属性和方法。
包装类与基本数据类型
Boolean和Character的父类是Object,其他包装类的父类是Number
存储方式:包装类型对象实例化,借由new在堆空间里进行空间分配,对应栈空间中存储地址引用; 基本数据类型变量对应栈空间中存储的是具体数据值。 通常,包装类的效率会比基本数据类型的效率低,空间占用大。
初始值:基本数据类型有各自默认初始值,包装类的对象未初始化时,初始值均为null
装箱与拆箱
装箱:基本数据类型 转换为 包装类
拆箱:包装类 转换为 基本数据类型
自动与手动拆装箱
手动装箱:可以结合类型的构造方法或者valueOf()方法实现 手动拆箱:可以通过xxxValue()方法实现 自动装箱:把一个基本类型变量直接赋给对应的包装类型变量。 自动拆箱:把包装类对象直接赋给对应的基本数据类型变量
public static void main(String[] args){ //手动装箱 int one=12; //方式1:构造方法传参 Integer t1=new Integer(one); //方式2:类型.valueOf方法 Integer t2=Integer.valueOf(one); //手动拆箱 //对象.xxxValue()方法 int two=t1.intValue(); }
public static void main(String[] args){ //自动装箱 int one=12; Integer t1=one; //自动拆箱 int two=t1; }
包装类的比较
public static void main(String[] args) { Integer one= new Integer(100); Integer two = new Integer(100); System.out.println("one==two的结果:"+(one==two)); Integer three=100;//自动装箱 System.out.println("three==100的结果:"+(three==100));//自动拆箱 Integer four=100; System.out.println("three==four的结果:"+(three==four)); Integer five=200; System.out.println("five==200的结果:"+(five==200)); Integer six=200; System.out.println("five==six的结果:"+(five==six)); }
Integer i=Integer.valueOf(100);Java在执行此方法时,会提供一个缓存区,如果-128<参数<127,会从缓存区中查找是否存在同样的对象,如果有则会直接产生,如果没有才会实例化Integer
除Float和Double不能应用对象常量池概念,其他包装类都可以
这篇关于Java包装类的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-13TiDB + ES:转转业财系统亿级数据存储优化实践
- 2024-05-09“2024鸿蒙零基础快速实战-仿抖音App开发(ArkTS版)”实战课程已上线
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了
- 2024-05-09Google Chrome驱动程序 124.0.6367.62(正式版本)去哪下载?
- 2024-05-09有没有大佬知道这种数据应该怎么抓取呀?
- 2024-05-09这种运行结果里的10.100000001,怎么能最快改成10.1?
- 2024-05-09企业src漏洞挖掘-有意思的命令执行