第四章 运算符
4.1 Java运算符
4.1.1 赋值运算符
复合赋值运算符(+=,-=,*=,/=)
要知道=右边的优先级永远高于+=或其他的复合赋值元素符。
4.1.2 关系运算符
相等性运算符
== 和 !=
基本值的相等性
当比较字符时,Java使用字符的Unicode值作为字值。
如果将浮点数与整数相比较,且两者的值相等的话,则==运算符通常将返回true
引用变量的相等性
==用来比较对象时,仅当两个变量都引用同一个对象时,==才返回true。
枚举的相等性
枚举不可扩展,但是如果两个变量引用了相同的枚举常量,则它们==,equals也相等。
4.1.3 instanceof 比较
instanceof 只用于引用变量,以检查对象是否为某种类型。
instanceof 运算符只能用于测试对象(或null)属于相同类层次结构中的类类型。
对于接口,如果对象的任何一个超类实现了instanceof运算符右边的接口,则该对象就会通过instanceof测试。
null instanceof String没错,但是结果永远是false
instanceof 编译器错误
不能将instanceof运算符在跨两个不同的类层次间测试。
dog instanceof cat会有编译错误
Boat b2=new Speedboat();
b2 instanceof Speedboat,结果是True,因为instanceof是在运行时,而在运行时多态性起作用。
4.1.4 算术运算符
+ - * /
求余运算符%
字符串连接运算符+
如果任何一个操作数为String,则+为连字符
如果两个操作数都是数字,则+为加法
递增和递减运算符++ --
4.1.5 条件运算符
x=(布尔表达式)?为true时所赋的值:为false时所赋的值,
条件运算符可以嵌套多层。
4.1.6 逻辑运算符
短路逻辑运算符&& ||,
只能用于操作布尔值
逻辑运算符(非短路)& |
短路和非短路的区别是:那 x1 && y1 和 x2 & y2 来说。
如果 x1 为false,那么不会运行y1语句;但是x2不管结果是什么,y2都会运行。
逻辑运算符^和!
^异或,如果恰好只有(有且仅有)一个操作数为true,则返回true。
常用操作符的优先级顺序:
优先级 操作符分类 操作符
高 一元操作符 ! ++ -- -
| 数学运算符 * / % + -
| 比较操作符 > < >= <= != ==
| 逻辑操作符 && || & | ^
V 三元操作符 x?y:z
低 赋值操作符 = *= -= += /= %=
分享到:
相关推荐
scjp考试资料,其中包含题目,答案,ppt,模拟试题,复习笔记,常见问题
SCJP 310-065 全真模擬測驗 2009/09考過,命中率95
SCJP考题和学习笔记
大小: SCJP_Guide_考试认证指南.pdf
SCJP_经典题笔记之一,可以看之,1分而已
java scjp的官网认证资料,应该会有用吧
scjp笔记 考过scjp的学生的第一手资料 强烈推荐
sjcp的考试的题目...希望对哥们你有帮助.
Testpassport最新SUN_SCJP_310-065_题库免费下载.pdf
sun官方提供的scjp考试范围,考前必看!
SCJP复习笔记,其中有复习SCJP过程中的一些问题供大家分享
蓝小刀的学习笔记_SCJP1.4.doc
本书主要内容包括:声明和访问控制、面向对象、赋值和初始化、运算符、流程控制、异常和断言、I/O、格式化和解析、泛型、集合、内部类、线程和Java开发。书中在介绍考试要点时针对每个考试目标,使用了大量的插图...
对于Java程序设计员,Sun推出两项认证:Sun Certificated Java Programmer (SCJP)和Sun Certificated Java Developer(SCJD)。 SCJP 可以说各种Java认证的基础,相对于SCJD来说,SCJP跟侧重于测验您的Java程序...
专为sun的SCJP认证而编制,内容涉及了SCJP认证的方方面面
关于sun公司提供scjp认证的有关习题以及答案 对要考scjp认证的兄弟姐妹们可能会有帮助
scjp简明教程for scjp 5,第一遍复习适用