包装类(封装类)

1、包装类的理解:

① Java提供了8种基本数据类型对应的包装类(封装类),使得基本数据类型的变量具有类的特征,有了类的特点,就可以调用类中的方法。

② 需要掌握的:基本数据类型、包装类、String类三者之间的相互转换。

2、包装类有:

byte → Byte

short → Short

int → Integer

long → Long

float → Float

double → Double

boolean → Boolean

char → Character

注:所有包装类的父类都是 Number

3、基本数据类型与包装类之间的转换:

① 基本数据类型转换成对应的包装类 :调用包装类的构造器。

例如:

int num = 10;
Integer i1 = new Integer(num);
System.out.println(i1.toString());
Integer i2 = new Integer("123");
System.out.println(i2.toString());

② 包装类转换成对应的基本数据类型 :调用包装类的xxxValue()。(“xxx”是指对应的基本数据类型名称)

例如:

Integer in = new Integer(12);
int i = in.intValue();
System.out.println(i);

4、自动装箱和自动拆箱(JDK 5.0 新特性):

① 自动装箱:基本数据类型转换成对应的包装类。

例如:

int num1 = 12;
Integer in = num; //自动装箱

② 自动拆箱:包装类转换成对应的基本数据类型。

例如:

int num2 = in; //自动拆箱 (in 是上个例子中的变量)

5、基本数据类型(或对应的包装类)与String类之间的相互转换:

① 基本数据类型(包装类)转换成String类:调用String类重载的valueOf()方法。

例如:

float f1 = 12.3f;
String str = String.valueOf(f1); //转换过程

② String类转换成基本数据类型(包装类):调用包装类的parseXxx()方法。(“xxx”是指对应的基本数据类型名称)

例如:

String str = "123";
int num = Integer.parseInt(str); //转换过程,可能会报:NumberFormatException异常

注:Integer内部定义了IntegerCache结构,IntegerCache中定义了Integer[],保存了从-128 ~ 127范围的整数。如果使用自动装箱的方式,给Integer赋值的范围在-128 ~ 127范围内时,可以直接使用数组中的元素,不用再去new了。主要目的:提高效率。

posted @   萧若風  阅读(51)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
点击右上角即可分享
微信分享提示