第十二篇:JAVA常用类之包装类
2017-08-13 23:12
141 查看
JAVA语言包装类把基本数据类型转换为对象。每个JAVA基本类型在java.lang包中都有一个相应的包装类。
每个包装类都有几种重载形式,以Double为例。
除Character之外,其他的包装类都可以以一个字符串为参数构造出他们的实例。
当包装类的构造方法参数为String类型时,字符串不能为空,而且该字符串必须可以解析为相应的基本数据类型。
Character类和Boolean类直接继承自Object类,除此之外,其他的包装类都是java.lang.Number的直接子类,因此都继承或覆盖重写了java.lang.Number类中的方法。
包装类都覆盖了Object类中的toString()方法,以字符串形式返回被包装的基本数据类型。除了Character类和Boolean类外,包装类都有valueOf(String s)静态工厂方法,可以将指定字符串解析成与之对应的基本类型。同样,字符串不能为空,而且该字符串必须可以解析为相应的基本数据类型。
JDK1.5及以后版本运行基本类型和包装类型进行混合运算。在JDK1.5版本之前,数学运算表达式中操作单元必须是基本数据类型。
装箱:把基本类型用它们相应的引用类型包装起来,使其具有对象的性质。int包装成Integer、float包装成Float。
拆箱:和装箱相反,将引用类型的对象简化成值类型的数据。
基本数据类型的自动装箱(autoboxing)、拆箱(unboxing)是自J2SE 5.0开始提供的功能。
一般我们要创建一个类的对象实例的时候,我们会这样:
Class a = new Class(parameter);
当我们创建一个Integer对象时,却可以这样:
Integer i = 100; (注意:不是 int i = 100; )
实际上,执行上面那句代码的时候,系统为我们执行了:Integer i = Integer.valueOf(100);
此即基本数据类型的自动装箱功能。
基本类型 | 包装类 |
---|---|
boolean | Boolean |
byte | Byte |
char | Character |
short | Short |
int | Integer |
long | Long |
float | Float |
double | Double |
包装类的构造方法
每个包装类都有几种重载形式,以Double为例。Double d1 = new Double(2.0); Double d1 = new Double("2.0");
除Character之外,其他的包装类都可以以一个字符串为参数构造出他们的实例。
当包装类的构造方法参数为String类型时,字符串不能为空,而且该字符串必须可以解析为相应的基本数据类型。
包装类常用方法
Character类和Boolean类直接继承自Object类,除此之外,其他的包装类都是java.lang.Number的直接子类,因此都继承或覆盖重写了java.lang.Number类中的方法。
Number方法摘要
返回值 | 方法名 | 说明 |
---|---|---|
byte | byteValue() | 以 byte 形式返回指定的数值 |
abstract double | doubleValue() | 以 double 形式返回指定的数值 |
abstract float | floatValue() | 以 float 形式返回指定的数值 |
abstract int | intValue() | 以 int 形式返回指定的数值 |
abstract long | longValue() | 以 long 形式返回指定的数值 |
short | shortValue() | 以 short 形式返回指定的数值 |
JDK1.5及以后版本运行基本类型和包装类型进行混合运算。在JDK1.5版本之前,数学运算表达式中操作单元必须是基本数据类型。
自动装箱拆箱
装箱:把基本类型用它们相应的引用类型包装起来,使其具有对象的性质。int包装成Integer、float包装成Float。 拆箱:和装箱相反,将引用类型的对象简化成值类型的数据。
基本数据类型的自动装箱(autoboxing)、拆箱(unboxing)是自J2SE 5.0开始提供的功能。
一般我们要创建一个类的对象实例的时候,我们会这样:
Class a = new Class(parameter);
当我们创建一个Integer对象时,却可以这样:
Integer i = 100; (注意:不是 int i = 100; )
实际上,执行上面那句代码的时候,系统为我们执行了:Integer i = Integer.valueOf(100);
此即基本数据类型的自动装箱功能。
相关文章推荐
- JavaSE入门学习30:Java常用类之包装类
- JAVA——(3)常用类:Math、Scanner、String、StringBuffer、Array、Calendar、Date、Character、包装类(Intger)
- JAVA常用类之包装类
- java学习之路 之 Java常用类-包装类(Wrapper)及练习题
- java常用类,常用包,常用接口,运行时错误
- java常用类解析五:IO系统File类及文件搜索工具类
- Java常用类介绍
- Java常用类|数据类型包装类、Date、SimpleDateFormat 、Calendar 、Math
- Java常用类:StringBuilder
- Java--常用类
- Java常用类
- Java程序员从笨鸟到菜鸟之(五)java开发常用类(包装,数字处理集合等)(下)
- Java常用类之Properties类
- Java基础——String,Stringbuffer,StringBuilder与其他常用类
- java-缓冲流对输入输出设备的包装
- 智渔课堂官方免费教程二十一:Java常用类之包装类 自动装箱 自动拆箱
- java基本类型与包装类型
- Java基础进阶_day06_(Object,常用类,包装类,正则表达式)
- java基本类型的包装
- Java - 常用类