包装类

一、了解包装类

Java中一直提倡一个概念:一切皆对象,那么结合object的特点实际上就非常容易理解(在全部都是对象时,Object才可以达到统一参数的目的),但是在这之中就出现了一个不和谐的地方:基本数据类型不是对象,所以最早时部分人把基本数据类型做一个简单包装。类似如下结构:

 

 

以上代码简单,但是比较麻烦,针对基本数据类型给出了系统包装类:intInteger),charCharacter),byteByte),shortShort),longLong,floatFloat),doubledouble),booleanBoolean)。

但是以上八中包装类分为两组:BooleanCharacter

1)对象型包装类(直接继承了object类):

2)数值型包装类:(继承了Number类):ByteShortIntegerLongFloatDouble

Number本身是一个抽象类,再此类中提供了有如下的方法:byteValue(),shortValue()、longValue()、doubleValue()、floatValue()、这六个方法就是就包装类里取出被包装的基本数据。

二、装箱与拆箱

现在对于数据就提供有基本数据类型与之对应的包装类型,而这两者的转换定义如下:

1. 装箱操作:将基本数据类型变为包装类对象,一般利用各个包装类的构造方法进行。

2.拆箱操作:将包装类中所含的基本类型取出,一般都使用Number类定义的方法。

范例:以intInteger为例:

 

范例:以doubleDouble为例

 

Integerdouble都属于数值型的包装类,而对于包装类还存在有对象型。

范例:以booleanBoolean为例

 

以上代码都是在jdk1.5之前使用的,一切的操作必须手工的装箱和拆箱,但从jdk1.5后开始增加了自动装箱和自动拆箱的功能,所有的包装类对象也可以直接进行各种数学计算。

范例:自动装箱和自动拆箱

 

所以在以后开发中没有必要再去调用构造或者调用XXXValue()方法进行操作了。既然有了自动装箱和拆箱操作,则意味着基本数据类型可以直接被object接受。

范例:使用object接受double数据

 

目前为止,object可以接受所有的参数了。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值