Java包装类核心知识点总结
引言本文详细讲解Java包装类核心知识点涵盖8大基本类型对应的包装类、自动装箱与拆箱、包装类常用API、字符串与基本类型转换。一、包装类概述Java是面向对象语言8大基本数据类型不具备对象特性包装类就是将基本数据类型封装成对象的类让基本类型可以使用对象的方法和属性。8大基本类型对应的包装类byte → Byteshort → Shortint → Integerlong → Longfloat → Floatdouble → Doublechar → Characterboolean → Boolean二、包装类创建方式1. Integer 创建publicclassWrapperDemo{publicstaticvoidmain(String[]args){// 方式1构造方法创建不推荐Integeri1newInteger(100);Integeri2newInteger(200);// 方式2静态方法 valueOf()推荐Integeri3Integer.valueOf(300);Integeri4Integer.valueOf(400);}}2. 其他包装类同理// Long类型LonglLong.valueOf(1000L);// Double类型DoubledDouble.valueOf(3.14);// Boolean类型BooleanbBoolean.valueOf(true);// Character类型只能传字符CharactercCharacter.valueOf(A);三、自动装箱与自动拆箱JDK5特性1. 自动装箱基本类型 → 自动转换为 包装类对象// 自动装箱int → IntegerIntegernum10;2. 自动拆箱包装类对象 → 自动转换为 基本类型// 自动拆箱Integer → intIntegera20;intba;3. 运算自动拆箱装箱Integerx10;Integery20;intresxy;// 自动拆箱运算Integersumres;// 自动装箱四、基本类型与字符串相互转换1. 基本类型 → 字符串intnum100;// 方式1拼接空串Strings1num;// 方式2String.valueOf()Strings2String.valueOf(num);// 方式3包装类 toString()Strings3Integer.toString(num);2. 字符串 → 基本类型Stringstr200;// 方式1包装类 parseXXX() 最常用intaInteger.parseInt(str);// 方式2先转包装类再自动拆箱intbInteger.valueOf(str);3. 其他类型转换// 字符串转longlonglLong.parseLong(1000);// 字符串转doubledoubledDouble.parseDouble(3.14);// 字符串转booleanbooleanbBoolean.parseBoolean(true);五、包装类常用API方法publicclassWrapperApiDemo{publicstaticvoidmain(String[]args){// 1. 获取最大值、最小值System.out.println(Integer.MAX_VALUE);System.out.println(Integer.MIN_VALUE);// 2. 十进制转二进制、八进制、十六进制System.out.println(Integer.toBinaryString(10));System.out.println(Integer.toOctalString(10));System.out.println(Integer.toHexString(10));// 3. Character 常用方法System.out.println(Character.isDigit(A));// 判断是否为数字System.out.println(Character.isLetter(9));// 判断是否为字母System.out.println(Character.toUpperCase(a));// 转大写}}六、包装类的常量池Integer、Byte、Short、Long 这四种包装类实现了常量池缓存默认缓存范围-128 ~ 127在范围内使用自动装箱会复用常量池对象超出范围则创建新对象publicclassCacheDemo{publicstaticvoidmain(String[]args){Integera100;Integerb100;System.out.println(ab);// true 使用常量池Integerx200;Integery200;System.out.println(xy);// false 超出缓存范围新建对象}}七、包装类与基本类型的区别包装类是引用类型默认值为null基本类型有默认值int 0boolean false包装类可用于泛型、集合基本类型不支持包装类可调用方法基本类型不能包装类存在常量池优化基本类型无我是双栈小码哥点赞收藏关注希望本文能对您的学习和工作有所帮助。