Java编程思想学习(二) 操作符
1. 对象“赋值”:对一个对象进行操作时,我们真正操作的是对对象的引用。所以倘若“将一个对象赋值给另一个对象”,实际是将“引用”从一个地方复制到另一个地方。(引用于对象之间存在关联,但这种关联可以被改变。)
2. == 和 != 比较的是对象的引用。 equals() 方法的默认行为是比较引用,如果定义类的对象中对 equals()方法进行重写,则可以实现比较对象的实际内容是否相等的效果。
3. “与” (&&) 、“或” (||) 、“非” (!) 操作只可应用于布尔值。与在 C 和 C++ 中不同的是:不可将一个非布尔值当作布尔值在逻辑表达式中使用。注意,如果在应该使用 String 值的地方使用了布尔值,布尔值会自动转换成适当的文本形式。
4. 如果对 char 、 byte 或者 short 类型的数值进行移位处理,那么在移位进行之前,它们会被转换为 int类型,并且得到的结果也是一个 int 类型的值。
5. 直接将 float 或 double 转型为整数值时,总是对该数字执行截尾。如果想要得到四舍五入的结果,需要使用 java.lang.Math 中的 round() 方法。
6. 只要类型比 int 小(即 char 、 byte 或者 short ),那么在运算前,这些值会自动转换成 int 。通常,表达式中出现的最大的数据类型决定了表达式最终结果的数据类型。 float*double=double,int*long=long.
7. Java 没有 sizeof ,因为所有数据类型在所有机器中的大小都是相同的。