Java基本数据类型
目录
- 整型
- 浮点类型
- 字符类型
- 布尔类型
Java是一种强类型语言,这就意味着必须为每一个变量声明一种类型。Java中的数据类型可分为基本数据类型和引用数据类型两种,其中引用数据类型需要以基本数据类型为基础构成。
本篇文章只对基本数据类型做一个尽可能全面的简单介绍,至于引用数据类型会在以后的篇幅中逐渐涉及到。
如果要用一个词来概括Java基本数据类型的话,恐怕没有比“四类八种”更合适的了。
四类 | 八种 |
整形 | byte(1)、short(2)、int(4)、long(8) |
浮点类型 | float(4)、double(8) |
字符类型 | char(2) |
布尔类型 | boolen(1 bit) |
Java中一共有八种基本数据类型(primitive type),其中有4种整形、2种浮点类型、1种用于表示Unicode编码的字符单元的字符类型char和1种用于表示真值的boolean类型。
- 整型
整型类型(字节) | 取值范围 |
byte(1) | -128~127 |
short(2) | -32768~32767 |
int(4) | -2147483648~2147483647(正好超过20亿) |
long(8) | -9223372036854775808~9223372036854775807 |
说明:
1.Java中整型的范围与运行Java代码的机器无关。
2.前后缀。
3.从Java7开始,可以为数字添加下划线,如:1_000_000
4.Java没有任何无符号(unsigned)形式的int、long、shotr和byte类型。
- 浮点类型
浮点型(字节) | 取值范围 |
float(4) | 大约±3.40282347E+38F(有效位数为6~7位) |
double(8) | 大约±1.79769313486231570E+308(有效位数为15位) |
说明:
1.浮点数值不适用于无法接受舍入误差的金融计算中。例如,命令System.out.println(2.0-1.1)将打印出0.8999999999999999,而不是0.9。这种舍入误差的主要原因是浮点数值采用二进制系统表示,而在二进制系统中无法精确地表示分数1/10。这就好像十进制无法精确地表示分数1/3一样。如果在数值计算中不允许有任何舍入误差,就应该使用BigDecimal类。
- 字符类型
在Java中,char类型描述了UTF-16编码中的一个代码单元。
特殊字符的转移序列:
转移序列(名称) | Unicode值 |
\b(退格) | \u0008 |
\t(制表) | \u0009 |
\n(换行) | \u000a |
\r(回车) | \u000d |
\”(双引号) | \u0022 |
\’(单引号) | \u0027 |
\(反斜杠) | \u005c |
说明:
1.char类型的字面量值要用单引号括起来。
2.Unicode转移序列会在解析代码之前得到处理。
3.不建议在程序中使用char类型,除非确实需要处理UTF-16代码单元。最好将字符串作为抽象数据类型处理。
- 布尔类型
boolean(布尔)类型有两个值:false和true,用来判定逻辑条件。
在Java中,整型值和布尔值之间不能相互转换。