【111天】尚学堂高淇JAVA300篇视频笔记
今天在外为那个破显卡跑了一天,结果还特么没修好,真是晦气,郁闷归郁闷,学习不能因为情绪而耽误了,这些笔记全是手机上看视频时记的。未来当算日更了,内容多就发专栏里,内容少就发笔记里。
第7集
- BigDecimal、BigInteger可分别用来算超出long、double的数。
- 转换二进制、十进制、八进制、十六进制的方法:integer.toBinaryString(a)、Integer.parseInt()、integer.toOctalString(a)、integer.toHexString(a)
- L问题:小写L容易与1混淆,尽量用大写
第8集
- 浮点数不能精确表示数,存在舍入误差,避免比较中使用。
- 浮点数精确到小数点后7位
-
存储空间:
- byte 1字节
- short 2字节
- int 4字节
- long 8字节
- float 4字节
- double 8字节
-
表数范围:
- byte:-128-127
- short:-32768-32767
- int:负2的31次方到正2的31次方-1
- long:负2的63次方到正2的63次方-1
第9集
- char是字符类型,用' ',String是字符串类型,用“ ”。
- 'a'表示一个字符,“a”表示字符串中有一个字符
- char用来表示Unicode编码表中的字符。
- Unicode被设计出来表示全世界的字符,两个字节(16位)表示一个数,0-65535
- char可以自动转换int使用,char temp = 'a'+2 输出temp的结果是c。但是char不能自动转换成int
第10集
自动类型转换一览表
特例
- byte short char与int可以自动互相转换,只要数值不超过其表数范围。
- int可以自动转换成float,为啥?主要因为能不能转换看的是表数范围,而不是看占用存储空间多少字节(int存储空间8字节、float存储空间4字节)。
- 所有二元运算符都有类型提升问题(+-*/%)。
- a=3;long b=4;则a+b之后将变成long。
-
int a=20亿;int b=10;这时候long c = long(a*b)没用,a*b结果出来的时候已经是int型了,应该是long c = (long)a*b,这样的写法是先将a变成long,再提升a*b结果的类型为long。
byte a=10 byte b=10 byte c=10 byte d=10 short e = 10*10*10*10s与 short e = 10s*10*10*10结果不同 前者还没提升类型就已经溢出,后者先提升类型再溢出。
第11集
jdk7的一个特性,可以用下划线分割数字,增加代码可读性。long a = 2222_2222_2222
第12集
无
第13集
- 10.2%3也是可以的输出结果的,但不是1.2
- 逻辑与和或运算符,才用短路方式,从左到右计算。
- boolean b = 1>2 && 2>(3/0);
System.out.println(b);
直接输出为false,不会报错【注意,( )没有让3/0先计算】
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。