六 包装类

Java是面向对象的语言,类是Java进行处理时的基本单元。在一些时候我们需要把基本数据类型当做对象来处理,但是Java规定并不能定义一个基本数据类型的对象如int对象,char对象等。所以Java为每个基本类型都提供了包装类——如与int对应的Integer类,与boolean对应的Boolean类等。

6.1 Intege类

java.lang包中包含有Integer类,Long类和Short类,他们可以将基本数据类型int,long和short封装成一个类。下面以Integer类为例介绍整数包装类。

(1)构造方法

Integer类有两种构造方法,分别为
Integer int1 = new Integer(45)Integer int2 = new Integer("45") 注意在使用String类作为参数时要使用数值型字符串作为参数,否则会抛出NumberFormatException异常。

(2)常用方法

下面是Integer类的一些常用方法

方法

返回值

功能

byteValue()

byte

使用byte类型返回该Integer的值

compareTo(another Integer)

int

从数值上比较两个Integer的值

equals(Object)

boolean

比较两个对象是否相等

intValue()

int

int型返回值

shortValue

short

short型返回值

toString()

String

返回一个表示该Integer值的String对象

valueOf(String str)

Integer

返回保存指定的String值的Integer对象

parseInt(String str)

int

返回包含在由str指定的字符串中数字的等价整数值

Integer类的toString()方法可以将Integer对象转化为十进制字符串表示,与此同时还有toBinaryString(),toHexString(),toOctalString()三种方法支持将Integer对象转化为二进制,十六进制和八进制字符串

(3)常量

Integer提供了下面的常量
MAX_VALUE:表示int类型可取的最大值。
MIN_VALUE:表示int类型可取的最小值
SIZE:用二进制补码形式表示int值的位数
TYPE:表示基本类型int的Class实例

6.2 Boolean类

Boolean类将基本类型为boolean的值包装在一个对象中,一个Boolean类型的对象只包含一个类型为boolean的字段。

(1)构造方法

Boolean类对象同样有两种构造方法
Boolean bool = new Boolean(true)参数必须为boolean类型的true或flase
Boolean bool1 = new Boolean("OK")参数为String类型,当参数不为null且忽略大小写时与true相等,则创建一个表示true的Boolean对象,否则创建一个flase的Boolean对象。

(2)常用方法

方法

返回值

功能

booleanValue()

boolean

使用boolean类型返回该Boolean对象的值

equals(Object)

boolean

比较两个对象是否相等

toString()

String

返回一个表示该Boolean值的String对象

valueOf(String str)

boolean

返回保存指定的String值的boolean值

parseBoolean(String str)

boolean

将String中保存的字符串解析为boolean值

(3)常量

TRUE:对应基值true的Boolean对象
FLASE:对应基值flase的Boolean对象
TYPE:基本类型boolean的Class对象

6.3 Byte类

(1)构造方法

Byte byte1 = new Byte(45)使用byte型变量作为参数
Byte byte1 = new Byte("24")使用String类型变量作为参数,必须为数值型字符串

(2)常用方法

方法

返回值

功能

byteValue()

byte

使用byte值返回Byte对象

compareTo(another Byte)

int

从数值上比较两个Byte的值

doubleValue()

double

使用double值返回该Byte对象

equals(Object)

boolean

比较两个对象是否相等

intValue()

int

int型返回值

toString()

String

返回一个表示该byte值的String对象

valueOf(String str)

byte

返回保存指定的String值的byte对象

parseByte(String str)

byte

返回包含在由str指定的字符串中数字byte值

(3)常量

MIN_VALUE:byte类型能表示的最小值
MAX_VALUE:byte类型表示的最大值
SIZE:二进制补码形式表示byte值的位数
TYPE:表示byte型的Class实例

6.4 Character类

(1)构造方法

Character ch = new Character('a')使用char型作为参数

(2)常用方法

方法

返回值

功能

charValue()

char

返回此Character对象的char值

compareTo(Another Character)

int

根据数字比较两个Character对象

equals(Object)

boolean

调用equals方法对两个Character对象进行比较

toUpperCase(char ch)

char

将字符参数转换为大写

toLowerCase(char ch)

char

将字符参数转换为小写

toString()

String

返回一个表示指定char值的String对象

isUpperCase(char ch)

boolean

判断指定字符是否为大写字符

isLowerCase(char ch)

boolean

判断指定字符是否为小写字符

(3)常量

CONNECTOR_PUNCTUATION:返回byte值,表示Unicode规范中多个常规类别Pc
UNASSIGNED:返回byte值。表示Unicode规范中的常规类别Cn
TITLECASE_CASE:返回byte值。表示Unicode规范中的常规类别Lt

6.5 Double类

(1)构造方法

Double dou = new Double(25.66)使用double型作为参数
Double dou = new Double("1536.3")使用数值型字符串作为参数

(2)常用方法

基本与上面的其他包装类的常用方法类似,如equals方法,toString方法,intValue方法,isNaN方法等

(3)常量

MAX_EXPONENT:返回int值。表示double型变量可能具有的最大指数。
MIN_EXPONENT:返回int值。表示double型变量可能具有的最小指数。
NEGATIVE_INFINITY:返回double值。表示保存double类型的负无穷大值的常量。
POSITIVE_INFINITY:返回double值。表示保存double类型的正无穷大值的常量。

6.6 Number类

抽象类Number类是各种包装类及数值处理类BigDecimal,BigInteger类的父类。Number的子类必须提供将标示顿 数值转换为其他数据类型的方法,如floatValue,byteValue等方法。