Java基础3:数据类型
什么是变量
变量就是内存中存储数据(值)的一小块空间。也就是说,当创建变量的时候,需要在内存中申请空间。
Java属于强类型语言,内存管理系统根据变量的类型来为变量分配存储空间,分配的空间只能用来储存相应类型的数据。
而在Java中,数据类型又分为两大类:
- 内置数据类型
- 引用数据类型
内置数据类型
byte
- 8位、有符号的,以二进制补码表示的整数;
- 最小值是
-128
(-2^7),最大值是127
(2^7-1); - 默认值是
0
; - byte 类型用在大型数组中节约空间,主要代替整数,因为 byte 变量占用的空间只有 int 类型的四分之一;
例:1
2byte a = 100;
byte b = -50;
short
- 16 位、有符号的以二进制补码表示的整数;
- 最小值是
-32768
(-2^15),最大值是32767
(2^15 - 1); - Short 数据类型也可以像 byte 那样节省空间。一个short变量是int型变量所占空间的二分之一;
- 默认值是 0;
例:1
2short s = 1000;
short r = -20000;
int
- 32位、有符号的以二进制补码表示的整数;
- 最小值是
-2,147,483,648
(-2^31),最大值是2,147,483,647
(2^31 - 1); - 一般地整型变量默认为 int 类型;
- 默认值是
0
;
例:1
2int a = 100000;
int b = -200000;
long
- 64 位、有符号的以二进制补码表示的整数;
- 最小值是
-9,223,372,036,854,775,808
(-2^63),最大值是9,223,372,036,854,775,807
(2^63 -1); - 这种类型主要使用在需要比较大整数的系统上;
- 默认值是
0L
;
例:“L”理论上不分大小写,但是若写成”l”容易与数字”1”混淆,不容易分辩。所以最好大写。1
2long a = 100000L;
long b = -200000L;
float
- 单精度、32位、符合IEEE 754标准的浮点数;
- float 在储存大型浮点数组的时候可节省内存空间;
- 默认值是 0.0f;
- 浮点数不能用来表示精确的值,如货币;
例:1
float f1 = 234.5f;
double
- 双精度、64 位、符合 IEEE 754 标准的浮点数;
- 浮点数的默认类型为 double 类型;
- double类型同样不能表示精确的值,如货币;
- 默认值是
0.0d
;
例:7是一个int字面量,而7D,7.和8.0 是double字面量。1
2
3
4
5double d1 = 7D;
double d2 = 7.;
double d3 = 8.0;
double d4 = 8.D;
double d5 = 12.9867;
boolean
- 表示一位的信息;
- 只有两个取值:
true
和false
; - 这种类型只作为一种标志来记录 true/false 情况;
- 默认值是
false
;
例:1
boolean one = true;
char
- 单一的 16 位 Unicode 字符;
- 最小值是
\u0000
(十进制等效值为 0),最大值是\uffff
(即 65535); - char数据类型可以储存任何字符;
例:1
char letter = 'A';
引用类型
在Java中,引用类型指向一个对象,指向对象的变量是引用变量。这些变量在声明时被指定为一个特定的类型,比如Employee。变量一旦声明后,类型就不能被改变了。
对象、数组都是引用数据类型,所有引用类型的默认值都是null,一个引用变量可以用来引用任何与之兼容的类型。
例:
1 | Employee newEmployee = new Employee( "Asurin" ); |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 时雨小栈!
评论