1

【111天】尚学堂高淇JAVA300篇视频笔记

今天在外为那个破显卡跑了一天,结果还特么没修好,真是晦气,郁闷归郁闷,学习不能因为情绪而耽误了,这些笔记全是手机上看视频时记的。未来当算日更了,内容多就发专栏里,内容少就发笔记里。

第7集

  1. BigDecimal、BigInteger可分别用来算超出long、double的数。
  2. 转换二进制、十进制、八进制、十六进制的方法:integer.toBinaryString(a)、Integer.parseInt()、integer.toOctalString(a)、integer.toHexString(a)
  3. L问题:小写L容易与1混淆,尽量用大写

第8集

  1. 浮点数不能精确表示数,存在舍入误差,避免比较中使用。
  2. 浮点数精确到小数点后7位
  3. 存储空间:

    1. byte 1字节
    2. short 2字节
    3. int 4字节
    4. long 8字节
    5. float 4字节
    6. double 8字节
  4. 表数范围:

    1. byte:-128-127
    2. short:-32768-32767
    3. int:负2的31次方到正2的31次方-1
    4. long:负2的63次方到正2的63次方-1

第9集

  1. char是字符类型,用' ',String是字符串类型,用“ ”。
  2. 'a'表示一个字符,“a”表示字符串中有一个字符
  3. char用来表示Unicode编码表中的字符。
  4. Unicode被设计出来表示全世界的字符,两个字节(16位)表示一个数,0-65535
  5. char可以自动转换int使用,char temp = 'a'+2 输出temp的结果是c。但是char不能自动转换成int

第10集

自动类型转换一览表

特例

  1. byte short char与int可以自动互相转换,只要数值不超过其表数范围。
  2. int可以自动转换成float,为啥?主要因为能不能转换看的是表数范围,而不是看占用存储空间多少字节(int存储空间8字节、float存储空间4字节)。
  3. 所有二元运算符都有类型提升问题(+-*/%)。
  4. a=3;long b=4;则a+b之后将变成long。
  5. 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集

  1. 10.2%3也是可以的输出结果的,但不是1.2
  2. 逻辑与和或运算符,才用短路方式,从左到右计算。
  3. boolean b = 1>2 && 2>(3/0);
    System.out.println(b);

直接输出为false,不会报错【注意,( )没有让3/0先计算】


Wall_Breaker
2.1k 声望1.2k 粉丝

生死之间,就是我的跃迁之路,全程记录,欢迎见证