• 欢迎光临flyzy小站!分享一些学习路上遇到的坑坑洼洼~

adad

第3章 操作符

  • 3.4 赋值
    1. “别名现象”:t1与t2不同的名字却指向了一个对象。(t2 = t1;)
  • 3.5 算术操作符
    1. 一元加减号的唯一作用是将较小类型的操作数提升为int.(short, char, byte->int)
  • 3.7 关系操作符
    1. equals()默认比较的是引用,除非在自己的新类中覆盖equals()方法,不然不会出现我们希望的行为。
Class Value(){
    int i;
}

//...

Value v1 = new Value();
Value v2 = new Valur();
v1.i = v2.i = 100;
System.out.println(v1.equals(v2));

//Output: false
  • 3.10 按位操作符
  1. 对于布尔值,按位操作符与逻辑操作符效果相同,但是他们不会“短路”。
  • 3.11 移位操作符
    1. 移位操作符只能用来处理整数类型。(基本类型的一种)
    2. char, byte, short在进行移位前会被转为int型。
  • 3.13 字符串操作符 + 和 +=
    1. Java中没有操作符重载。
  • 3.15 类型转换操作符
    1. 窄化转换,必须显示转换,可能会遗失信息;扩展转换,不必显示进行类型转换。
  • 3.16 Java中没有sizeof
    1. 所有数据类型在所有机器中的大小都是相同的,不需用考虑移植问题。
  • 3.17 操作符小结
    1. 对于char,byte,short,复合赋值(+=,-=)不需要类型转换。
    2. 对于char,byte,short,使用算术操作符中数据类型都会被提升为int,要显示的类型转换到原来的类型。
点赞