1、数据类型用来声明变量,不同类型分配不同大小的空间
2、数据类型大概两种:基本数据类型,引用数据类型
基本数据4大类8小种:整数型byte short int long、浮点型float double、布尔型boolean、
字符型 char
引用数据:String字符串 以及其他非基本数据的数据
3、byte、short、int、long 分别占用1/2/4/8个字节 1个字节=8个比特 1kb=1024字节
float、double 4/8字节
boolean、char 1/2字节
4、byte类型是【-128~127】表示256个数字,最左边的数字表正负,0表正,1表负。
true为1,false为0
5、short和char容量相同,但char表达的是文字,不分正负,所以char可以表示更大的数字
char不能直接转换成二进制,所以字符编码诞生。
6、字符编码需要记住的有:
ASCII(‘a’是97,‘A’是65,‘0’是48,然后往后顺延) ISO-8859-1(Latin-1)国标码 GB2312 GBK GB18030 Big5台湾 unicode(utf8 utf16 utf32)全都有
7、java中的转义字符
例如\t算一个字符,=tab,其中\负责转义。\出现会将后边紧挨的字符进行转义
System.out.println("abc\tdef");
输出结果就是 abc def
8、print和println的区别:println表输出完括号内容后自动换行,而print则不换行。
9、\t=tab \n=换行 \u+一个字符的unicode编码=这个字符,
类似有功能性的字符想当普通字符表示的话也可使用\,例如:
想输出',print('\'') 想输出\,print('\\')
10、整数型有4种表示形态:
![](https://i-blog.csdnimg.cn/blog_migrate/1fa97f7b22953079d58e78baba921c4b.png)
11、在任何情况下,整数型的“字面量\数据”默认当做int类型处理,若希望当做long类型,在“字面量\数据”后边+L
12、long b = 200 此处这个200没加L被默认为int类型数据,此时被赋值给long类型,属于小容量自动转换为大容量,可以允许。
13、大容量强制转换到小容量需要加上强制类型转换符(int),但虽然编译能通过,但运行时可能会损失精度。 例如:
long x = 100L;
int y = (int)x;
long强转int会直接把前边四个字节砍掉。
14、int强制转byte byte b=(byte)300 但如果你选择的数据本身值没超过byte的取值范围,可以直接赋值,不用考虑int强转,例如 byte c =1;可以运行 此规则运用于byte和short。
15、char x =97; 可以运行,输出结果为a。所以一个整数赋值给char,会自动转出个
16、计算机在底层存储数据时存储的是“二进制的补码形式”
17、byte、short、char混合运算时,先各自转成int再做运算。
18、当多种数据类型混合运算时,最终结果的类型与最大容量的类型保持一致。
19、java中int类型和int类型运算最终结果还是int,有小数的话小数点后直接舍弃。
20、float单精度 double双精度(更精确) 注意:任意一个浮点型都比整数型空间大。
浮点型自动默认为double类型 小数后+F表示其为float类型
int i =10.0/5;这个会先将5转换成double类型再运算,最后结果是double无法赋值给int。
21、基本数据类型转换六条基本规则
![](https://i-blog.csdnimg.cn/blog_migrate/d38ed600b6ee442175041435b19ddd52.png)