JAVA数据类型分基本数据类型和引用数据类型
1 基本数据类型(常用数据类型):
整型:
短整型:byte,short,int
长整型:long
浮点型:float,double
字符型:char
布尔型:boolean
true false
byte :数据类型是8位、有符号的,以二进制补码表示的整数;
最小值是 -128(-2^7); 最大值是 127(2^7-1); 默认值是 0;
byte 类型节约空间,主要代替整数,占用的空间只有 int 类型的四分之一;
short: 数据类型是 16 位、有符号的以二进制补码表示的整数
最小值是 -32768(-2^15);最大值是 32767(2^15 - 1);
Short 数据类型同样节省空间。一个short变量是int型变量所占空间的二分之一;默认值是 0;
int :数据类型是32位、有符号的以二进制补码表示的整数;
最小值是 -2,147,483,648(-2^31);最大值是 2,147,483,647(2^31 - 1);一般地整型变量默认为 int 类型;默认值是 0 ;
long :数据类型是 64 位、有符号的以二进制补码表示的整数;
最小值是 -9,223,372,036,854,775,808(-2^63);最大值是 9,223,372,036,854,775,807(2^63 -1);
这种类型主要使用在需要比较大整数;默认值是 0L;
注意:
“L”理论上不分大小写,最好用大写,同i区分。
float: 数据类型是单精度、32位、符合IEEE 754标准的浮点数;
float 在储存大型浮点数组的时候可节省内存空间;默认值是 0.0f;
浮点数不能用来表示精确的值,如money。
double: 数据类型是双精度、64 位、符合IEEE 754标准的浮点数;
浮点数的默认类型为double类型;
double类型同样不能表示精确的值,如货币;
默认值是 0.0d;
例子:double d1 = 123.4。
boolean数据类型表示一位的信息;
只有两个取值:true 和 false;默认值是 false;
char类型是一个单一的 16 位 Unicode 字符;
最小值是 \u0000(即为0);最大值是 \uffff(即为65,535);
char 数据类型可以储存任何字符;
例子:char letter = ‘A’;。
2引用数据类型
字符串:string
类
接口
数组
两种基本类型之间的异同
一、概念上
基本数据类型:变量名指向具体的数值
引用数据类型:变量名指向存数据对象的内存地址,即变量名指向hash值
二、内存上
基本数据类型:变量在声明之后系统就会立刻分配给他内存空间
引用数据类型:它以类似指针的方式指向对象实体,此时不会分配内存,只是存储了一个内存地址。
三、赋值赋值
基本数据类型:使用时需要赋具体值,a = b;是把b的值传给a,存在a的内存空间内。该判断时使用“==”号
引用数据类型:使用时可以赋null,判断时使用equals方法,a = b;是把a的数据的地址传给b,存储的是地址,这个地址指向实际的数据。