教你做面膜v官方网站,wordpress自定义目录,整套网站建设,产权交易中心网站建设的原因包装类 一方面出于性能方面的考虑#xff0c;java为数值使用基本类型#xff0c;而不是对象。基本类型不是对象层次的组成部分#xff0c;它们不继承Object。 另一方面有时需要创建表示基本类型的对象#xff0c;例如集合类只处理对象。为了在类中存储基本类型#xff0c;…包装类 一方面出于性能方面的考虑java为数值使用基本类型而不是对象。基本类型不是对象层次的组成部分它们不继承Object。 另一方面有时需要创建表示基本类型的对象例如集合类只处理对象。为了在类中存储基本类型需要将基本类型包装到一个类中为此Java为8种基本数据类型分别提供了对应的包装类。本质上这些类将基本类型包装到一个类中因此通常将它们称为类型包装器。包装器类位于Java.lang包中。
八个包装类
Byte Short Integer Long Float Double Character Boolean
Character包装器
Character是char类型的包装器。Character的构造函数为
Character(char ch)
其中ch指定了将由即将创建的Character对象包装的字符。
为了获取Character对象中的char数值可以调用charValue()如下所示
char charValue( )
该方法返回封装的字符。
Boolean包装器
Boolean是包装boolean值的包装器。它定义了以下构造函数
Boolean(boolean boolValue)
Boolean(String boolString) 在第一个版本中boolValue必须是true或false。在第二个版本中如果boolString包含字符串“true”(大写或小写形式都可以)则新的Boolean对象将为真否则将为假。
为了从Boolean对象获取boolean值可以使用booleanValue()如下所示
boolean booleanValue( )
该方法返回与调用对象等价的boolean型值。
数值类型的包装器类
1、构造器 所有数值类型包装器都定义了用于从给定数值或数值的字符串表示形式构造对象的构造函数例如下面是为Integer定义的构造器
Integer(int num)
Integer(String str)//a123 “123”
如果str没有包含有效的数字值则会抛出NumberFormatException异常。
2、从包装器对象中提取数值 最常用类型的包装器是那些表示数值的包装器。包括Byte、Short、Integer、Long、Float以及Double。所有这些数值类型包装器都继承自抽象类Number。Number声明了以不同数字格式从对象返回数值的方法如下所示
byte byteValue( )
double doubleValue( )
float floatValue( )
int intValue( )
long longValue( )
short shortValue( )
3、将包装器对象转换成字符串
类型包装器都重写了toString()方法该方法可以将数值转换成字符串形式。
String str Integer.toString(100);
包装类方法以Byte为例
Byte a new Byte();//创建对象,括号内可传参
a.byteValue();//调用对象a的值
a.toString();//将对象a转换为String类型
a.valueof(123);//将传入的字符串转换为byte类型的对象
a.parseByte(456);//将传入的字符串转换为byte类型的值
自动装箱与自动拆箱 自动装箱是这样一个过程只要需要基本类型的对象就自动将基本类型自动封装(装箱)进与之等价的类型包装器中而不需要明确地构造对象。自动拆箱是当需要时自动抽取(拆箱)已装箱对象数值的过程。不需要调用intValue()或doubleValue()这类方法。 自动装箱和自动拆箱特性极大地简化了一些算法的编码移除了单调乏味的手动装箱和拆箱数值操作。它们还有助于防止错误。此外它们对于泛型非常重要因为泛型只能操作对象。最后集合框架需要利用自动装箱特性进行工作。
数值与字符串形式之间的转换 最常见的编程杂务之一是将数值的字符串表示形式转换成数值。数值类型的包装器类为此提供了相应的方法。例如
Int类的parseInt()方法
Long类的parseLong()方法
Double类的parseDouble()方法
为了将数值转换成字符串形式可以调用相应包装类的toString()方法。
说明
各包装器类以静态方法的形式提供了许多很有用的辅助功能请查阅帮助文档。
String.valueOf()
Int.toString();
Double.toString();
int I 100;
String str I “”;
字符分类
Character类提供一些静态方法用于判断字符属于哪一类。 static boolean isDigit(char ch) 如果ch是数字则返回true。 static boolean isLetter(char ch) 如果ch为字母则返回true。 static boolean isLetterOrDigit(char eh) 如果ch为字母或数字则返回true。 static boolean isLowerCase(char ch) 如果ch为小写字母则返回true static boolean isUpperCase(char ch) 如果ch为大写字母则返回true。 static boolean isSpaceChar(char ch) 如果ch为空格字符则返回true。 static boolean isWhitespace(char ch) 如果ch为空白字符则返回true。
包装器类中其他常用的常量和方法
Integer.MAX_VALUE//表示int数据类型的最大取值数2 147 483 647
Integer.MIN_VALUE//表示int数据类型的最小取值数-2 147 483 648
Integer.SIZE //长度多少bit
Integer.valueOf(100); //根据整数创建Integer对象
Integer. valueOf(100); //根据字符串创建Integer对象