数据类型 | 所占字节 |
---|---|
byte | 1 |
short | 2 |
int | 4 |
long | 8 |
float | 4 |
double | 8 |
char | 2 |
boolean | 1 |
所占字节大小代表这不同数据类型所占空间大小不同
定义变量时:
成员变量默认值可以不赋值,直接定义
static int c ;
那么默认c就是0,其他类型类似,默认向0看齐
局部变量定义时一定要赋初始值
在定义变量时,int c = 128;
默认等号右边128为int类型,然后再赋值给int类型的变量c;
long c = 128;
同理,等号右边为int类型,赋值给存在数据类型转换,但是long型数据内存比int型大,可以转换,反之则不行。
如果想让等号右边数据定义时为long型,需要再定义时加l\L. long c = 128L;
大容量向小容量转换可以强制转换,但是数据可能精度损失。
long c = 2147483648L;
int k = (int)c;输出结果为-2147483648,精度损失严重。
小数定义时跟整数一样,不过等号右边默认是double型数据, float f = 5.5;
编译错误,因为大容量转换为小容量需要强制转换符, float f = (float)5.5;
float f =5.5F;等号右边为浮点数类型,可以加f\F.
byte:1字节 -128~127
short:2字节 -215~215-1
int :4字节 -231~231-1 (-2147483648–2147483647)
long:8字节 -263~263-1
boolean:1字节 true false(java中不能以0或非0代替)
float: 4字节 -3.403E38~3.403E38
double:8字节 -1.798E308~- 4.9E324
char:2字节 ’\u0000‘~’ ’\uffff '(16进制的,换算过来即0~65535)