基本数据类型
Java语言提供了八种基本类型。六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。
byte:
byte 数据类型是8位、有符号的,以二进制补码表示的整数;
byte 类型用在大型数组中节约空间,主要代替整数,因为 byte 变量占用的空间只有 int 类型的四分之一;
例子:
byte a = 100;
byte b = -50;
short:
short 数据类型是 16 位、有符号的以二进制补码表示的整数
Short 数据类型也可以像 byte 那样节省空间。一个short变量是int型变量所占空间的二分之一;
例子:
short s = 1000;
short r = -20000;
int:
int 数据类型是32位、有符号的以二进制补码表示的整数;
一般地整型变量默认为 int 类型;
long:
long 数据类型是 64 位、有符号的以二进制补码表示的整数;
这种类型主要使用在需要比较大整数的系统上;
例子:
long a = 100000L;
long b = -200000L;
对于尾巴上的"L"理论上不分大小写,但是若写成"l"容易与数字"1"混淆,不容易分辩。所以推荐是是用大写。
float:
float 数据类型是单精度、32位、符合IEEE 754标准的浮点数;
float 在储存大型浮点数组的时候可节省内存空间;
浮点数不能用来表示精确的值。
例子:
float f1 = 234.5f;
double:
double 数据类型是双精度、64 位、符合 IEEE 754 标准的浮点数;
浮点数的默认类型为 double 类型;
double类型同样不能表示精确的值,如货币;
默认值是 0.0d;
例子:
double d1 = 7D ;
double d2 = 7.;
double d3 = 8.0;
double d4 = 8.D;
double d5 = 12.9867;
其中 7 是一个 int 字面量,而 7D,7. 和 8.0 是 double 字面量。
boolean:
只有两个取值:true 和 false;
这种类型只作为一种标志来记录 true/false 情况;
例子:
boolean flag = true;
char:
char 类型是一个单一的 16 位 Unicode 字符;
char 数据类型可以储存任何字符;
例子:
char code = 'A';
基本数据对比:
序号 | 数据类型 | 位数 | 默认值 | 取值范围 |
---|---|---|---|---|
1 | byte(位) | 8 | 0 | -2^7 ~ 2^7-1 |
2 | short(短整数) | 16 | 0 | -2^15~ 2^15 - 1 |
3 | int(整数) | 32 | 0 | -2^31 ~ 2^31 - 1 |
4 | long(长整数) | 64 | 0L | -2^63 ~ 2^63 -1 |
5 | float(单精度) | 32 | 0.0F | -2^31 ~ 2^31 - 1 |
6 | double(双精度) | 64 | 0.0D | -2^63 ~ 2^63 -1 |
7 | char(字符) | 16 | 空 | 0 ~ 2^16 - 1 |
8 | boolean(布尔值) | 8 | false | true、false |
!~~ !
String 不是基本数据类型,它属于引用数据类型。