一、包装类

概念:

java提供了两个类型系统,基本数据类型和引用数据类型,使用基本数据类型在于效率,然而很多情况下回创建对象使用,因为对象能做更多的功能。

所以可以使用一个类,把基本数据类型包装起来,在类中定义一些方法,这就叫做包装类。我们可以用这种方法来操作这些数据类型

基本类型 对应包装类(位于java.lang中)
byte byte
short short
int integer
long long
float float
double double
char character
boolean boolean

二、装箱与拆箱

概念

基本类型与对应的包装类对象之间,来回转换的过程称为“装箱”与“拆箱”。

装箱:

把基本类型的数据,包装到包装类中(基本类型数据->包装类)

语法格式:

1.包装类 别名 = new 包装类(对应值);

integer(int value) 构造一个新分配的 integer对象,它表示指定的 int 值

integer in1 = new integer(1);
 	system.out.println(in1);

输出结果是

2.包装类 别名 = new 包装类(“对应字符串”);

integer(string s) 构造一个新分配的 integer对象,它表示string 参数所指定的 int 值

【传递的字符串,必须是与选择的包装类的值相符合,否则会异常。 比如:在integer “100”正常 “a” 错误】

integer in2 = new integer("2");
		system.out.println(in2);
		integer in4 = integer.valueof("a");
		system.out.println(in4);

输出结果是:

这里输入“a”提示错误,numberformatexception 数字格式化异常

三、静态方法

包装类 别名 =包装类.valueof(对应值);

static integer.valueof(int i) 返回一个指定的 int 值的 integer 实例。

integer in3 =integer.valueof(3);
		system.out.println(in3);

输出结果是:

包装类 别名 =包装类.valueof(“对应字符串”);

static integer.valueof(string s) 返回一个指定的 string 值的 integer 对象。

【传递的字符串,必须是与选择的包装类的值相符合,否则会异常。 比如:在integer “100”正常 “a” 错误】

double in4 = double.valueof("3.00");
		system.out.println(in4);

输出结果是:

拆箱:

在包装中取出基本类型的数据(包装类->基本类型的数据)

【前提已经装箱过的,再进行拆箱提取出来】

语法格式:

以int的包装类做演示
int i = in1.intvalue(); 【什么类型用什么value】
int.intvalue() 以 int 类型返回该 integer 的值。

integer in1 = new integer(1);
	system.out.println(in1);
	int i = in1.intvalue();
	system.out.println(i);

输出结果是:

四、自动装箱与自动拆箱

自动装箱

直接吧数据类型的数值赋予包装类。

语法格式: 数据类型 别名 = 值;

double in =1.0;
system.out.println(in);

输出结果是:1.0

  • double in =1.0; 相当于是 double in = new double(1.0);

自动拆箱

包装类无法直接计算,自动转化为数据类型,再进行计算。

in = in +2.4;
system.out.println(in);

输出结果是:3.4

in + 2.4; 相当于是 in.doublevalue() + 2.4 = 3.4

到此这篇关于java基础详解之包装类的装箱拆箱的文章就介绍到这了,更多相关java包装类的装箱拆箱内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.887551.com!