四类八种
| 类型 | 占用存储空间 | 表数范围 | 
|---|---|---|
| byte | 1字节 | -128 ~ 127 | 
| short | 2字节 | -2^15 ~ 2^15 - 1 | 
| int(默认) | 4字节 | -2^31 ~ 2^31 - 1 | 
| long | 8字节 | -2^63 ~ 2^63 - 1 | 
| ---- | ---- | ---- | 
| float | 4字节 | -3.403E38 ~ 3.403E38 | 
| double(默认) | 8字节 | -1.798E308 ~ 1.798E308 | 
| ---- | ---- | ---- | 
| char | 2字节 | |
| ---- | ---- | ---- | 
| boolean | 1字节 or 4字节 ? | 
注:一个字节 = 1byte = 8bit(位)。基本数据类型定义时如果不赋予初始值,系统会默认给定一个对应的值。
定义变量
- 整型定义
整型包括byte short int long,java中定义int变量如果直接赋值数字,默认为int型。如果没有初始化值,int类型默认值为0。
	byte b = 1;
	short s = 1;
	int i = 1;
	// 定义long,如果数值超过int数值范围,需要在后面加一个L
	long l = 1;
	// 加上一个L,表示直接定义一个long类型。
	long l = 1L;
- 浮点型定义
	// 浮点型默认为double,double默认值为0.0
	double d = 1.1;
	// 如果需要定义float类型,需要加上一个f/F表示定义一个float类型
	float f1 = 1.1f;
	float f2 = 1.1F;
- 字符型定义
	//单引号表示,只能表示一个字符, 涵盖所有书面语字符,包括字母、标点、数字、中文等等。char默认值为空字符。
	char c1 = 'a';
	char c2 = '9';
	char c3 = '中';
	// char可以表示转义字符, 使用\来将其后面的字符转变为特殊字符型常量
	// 例如换行符
	char c4 = '\n';
	// 使用Unicode值表示字符型常量, \uxxx,其中xxx代表一个十六进制整数, 每个字符对应一个数值
	// 例如 \u1234 表示 ?
	char c5 = '\u1234';
- 布尔型定义
	//boolean只能是true 或者 false,默认为false
	boolean b = false;
类型转换
自动类型转换:当容量(数值范围)小的数据类型与容量大的数据类型做运算时,容量小的会自动转换为容量大的数据类型。
规则:char,byte,short -->>int -->>long -->> float -->> double
PS: 当char,byte,short之间作运算时,包括他们自己之间,结果默认为int类型
	int i = 1;
	short s = 1;
	// 默认转为容量大的int
	int i2 = i + s;
	int i = 1;
	float f = 1.1F;
	// 默认转为容量大的float
	float f2 = f + i;
float是4个字节,long是8个字节,但是long能够自动转换为float,主要是因为在内存中浮点数和整型数存储方式不一样。整数在内存中是直接以二进制形式存储的,而浮点数是以指数方式存储的。4字节的float和8字节的long,float的数值范围要远大于long,因此long能够自动转换为float。
https://blog.csdn.net/writing_happy/article/details/78880606
	long l = 1;
	float f3 = l + 2;
char表示的字符代表的是一个数字,所以char类型也可以用来做运算
	// a代表的数值是97,A代表的是65(均指ASCII码)
	char c = 'a';
	int i = c + 1; // i = 98
强制类型转换:容量大转换为容量小的,需要使用强制类型转换符: (),里面放需要转换的类型
强制类型转换存在的问题:精度损失(丢弃高位数据,保留低位数据)
	long q = 12345L;
	int i = (int) q;
	// 精度丢失举例:
	// int类型的12345二进制为0000 0000 0000 0000 0011 0000 0011 1001
	// 转换为byte(1字节/8位)时,丢弃高位数据,保留低位的0011 1001 -->> 57
	int i = 12345;
	byte q = (byte) i;
