一、Java数据类型
- 1、基本数据八大类型
(1)、byte:属于整数类型,用1个字节来存储,byte类型的默认值也为0。
(2)、short:属于整数类型,用2个字节存储,short类型的默认值为0,一般情况下,因为Java本身转型的原因,可以直接写为0。
(3)、int:属于整数类型,用4个字节存储,int类型的默认值为0。
(4)、long:属于整数类型,用8个字节存储,long类型的默认值为0L或0l,也可直接写为0。
(5)、float:属于实数类型,用4个字节来存储,float的默认值为0.0f或0.0F,在初始化的时候可以写0.0。
(6)、double:属于实数类型用8个字节来存储,double的默认值为0.0d或0.0D,double的默认值为0.0。
(7)、char:属于字符类型,用2个字节来存储,因为Java本身的字符集不是用ASCII码来进行存储,是使用的16位Unicode字符集,它的字符范围即是Unicode的字符范围,char类型的默认值为’u0000’。
(8)、boolean:属于布尔类型,在存储的时候不使用字节,仅仅使用1位来存储,范围仅仅为0和1,其字面量为true和false,而boolean变量在初始化的时候变量的默认值为false。
**基本类型大小位数值:
二进制位数:Byte.SIZE
最小值:Byte.MIN_VALUE
最大值:Byte.MAX_VALUE。**
- 2、基本数据之间转换
(1)、自动转换
1.1 类型由低级到高级分别为(byte,short,char)–int–long–float–double。
byte b;
int i=b;
long l=b;
float f=b;
double d=b;
1.2 低级类型为char型,向高级类型(整型)转换时,会转换为对应ASCII码值:
char c='c';
int i=c;
System.out.println("output:" i);
输出:output:99;
1.3 低级类型为char型,向高级类型(整型)转换时,会转换为对应ASCII码值:
short i=99;
char c=(char)i;
System.out.println("output:" c);
输出:output:c;
**byte,short,int三种类型都是整型,因此如果操作整型数据时,最好统一使用int型.**
(2)、强制转换
2.1将高级变量转换为低级变量时,情况会复杂一些,你可以使用强制类型转换:
int i=99;
byte b=(byte)i;
char c=(char)i;
float f=(float)i;
****转换肯定可能会导致溢出或精度的下降,因此笔者并不推荐使用这种转换。****
- 3、基本数据包裝类之间转换
3.1 包装类:Boolean、Character、Integer、Long、Float和Double,同类型之间转换自动拆装箱。