数据类型
在Java中数据类型主要分为两类:基本数据类型和引用数据类型。
基本数据类型有四类八种:
1:四类:整型、浮点型、字符型、布尔类型
2:八种:
对于数据类型,我只将与C语言不同之处进行记录。
(1)总体观念不同之处
- 在Java语言中,若是未声明数值的类型,那么整型默认为int,浮点型默认为double
- 在Java语言中没有无符号的概念,所有数据类型表示的值都是有符号的。
- 在Java语言中,每种数据类型都有包装类 ==> 即是让类型也能面对对象
(2)单个数据类型的不同之处
- 新增 字节型 byte 类型,属于整型类型,占用1字节;
- 长整型long 占用内存8字节,并且无long long类型;
- 字符类型char 占用内存2字节,使用 Unicode 表示字符,可以包括中文;
- 布尔类型 Boolean 只有两种取值:true false;
3,变量精讲
整型变量:
1))整型 int
int不论在什么系统都是4字节;
在创建变量时就要给变量赋值;
int的包装类为Integer
2))长整型 long
长整型的初始值后面必须加L,否则编译器会将该值看作int类型
long不论在什么系统都是8字节
long的包装类为Long
3))短整型 short
short在任何系统下都占2个字节
short的包装类型为Short
4))字节型 byte
byte在任何系统下都占1个字节
byte的包装类为Byte
浮点型变量:
在Java语言中,整型相除依旧会舍去小数位,故若想保留小数位,则需要使用浮点型数据类型进行计算
在Java语言中,浮点型在内存中的存储方式与C语言一致,均按照IEEE 754 标准, 尝试使用有限的内存空间表示可能无限的小数, 势必会存在一定的精度误差,因此浮点数是个近似值,并不是精确值。
1双精度浮点型 double
double在任何系统下都占8个字节
double的包装类型为Double
2单精度浮点型 float
float 类型在 Java 中占四个字节, 同样遵守 IEEE 754 标准. 由于表示的数据精度范围较小, 一般在工程上用到浮点数都优先考虑 double, 不太推荐使用 float. float的包装类型为Float。
由于在Java语言中,所有带小数点的数据都会将其认定为double类型,所以在对float类型进行初始化时,需要在其数值后面加上 f
float的包装类为Float
字符类型:
计算机中的字符本质上是一个整数. 在 C 语言中使用 ASCII 表示字符, 而 Java 中使用 Unicode 表示字符. 因此一个字符占用两个字节, 表示的字符种类更多, 包括中文.
char的包装类为Character
布尔类型:
boolean 类型的变量只有两种取值, true 表示真, false 表示假
Java 的 boolean 类型和 int 不能相互转换, 不存在 1 表示 true, 0 表示 false 这样的用法
boolean的包装类型为Boolean