目录
基本数据类型与包装类
1、基本数据类型
JAVA中一共有八种基本数据类型,他们分别是 :byte、short、int、long、float、double、char、boolean
类型 | 类别 | 字节 | 取值范围 |
---|---|---|---|
byte | 整型 | 1byte | -2^7 ~ 2^7-1 |
short | 整型 | 2byte | -2^15 ~ 2^15-1 |
int | 整型 | 4byte | -2^31 ~ 2^31-1 |
long | 整型 | 8byte | -2^63 ~ 2^63-1 |
float | 浮点型 | 4byte | 3.402823e+38 ~ 1.401298e-45 |
double | 浮点型 | 8byte | 1.797693e+308~ 4.9000000e-324 |
char | 文本型 | 2byte | 0~2^16-1 |
boolean | 布尔型 | 1byte | true/false |
2、包装类
虽然 Java 语言是典型的面向对象编程语言,但其中的八种基本数据类型并不支持面向对象编程,基本类型的数据不具备“对象”的特性——不携带属性、没有方法可调用。 沿用它们只是为了迎合人类根深蒂固的习惯,并的确能简单、有效地进行常规数据处理,最主要的原因是包装类不复制时,默认值为NULL,而基本数据类型的默认值不是NULL。
这种借助于非面向对象技术的做法有时也会带来不便,比如引用类型数据均继承了 Object 类的特性,要转换为 String 类型(经常有这种需要)时只要简单调用 Object 类中定义的toString()即可,而基本数据类型转换为 String 类型则要麻烦得多。为解决此类问题 ,Java为每种基本数据类型分别设计了对应的类,称之为包装类(Wrapper Classes),也有教材称为外覆类或数据类型类。
基本类型 | 对应的包装类 |
---|---|
byte | Byte |
short | Short |
int | Integer |
long | Long |
float | Float |
double | Double |
char | Boolean |
boolean | Character |
3、自动装箱与拆箱
就是基本数据类型与包装类之间的转换!
Integer integer = 5; //装箱,基本数据类型到包装类
int i = integer; //拆箱,包装类到基本数据类型