Java运算符
算术运算符
关系运算符
位运算符
逻辑运算符
主要用于boolean判断???
短路逻辑运算符
当使用与逻辑运算符时,在两个操作数都为true时,结果才为true,但是当得到第一个操作为false时,其结果就必定是false,这时候就不会再判断第二个操作了。
1 public class LuoJi{ 2 public static void main(String[] args){ 3 int a=5; 4 boolean b=(a<4)&&(a++<10); 5 System.out.println("使用短路逻辑运算符的结果为:"+b); 6 } 7 }
赋值运算符
其他运算符
条件运算符(?:)
条件运算符也被称为三元运算符。该运算符有3个操作数,并且需要判断布尔表达式的值。该运算符的主要作用是决定哪个值应该赋值给变量。
1 variable x=(expression)? value if true: value if false
1 public class Test{ 2 public static void main(String[] args){ 3 int a,b; 4 a=10; 5 b= (a==1)? 20:30; 6 System.out.println("Value of b is:"+b); 7 } 8 }
instanceof运算符
该运算符用于操作对象实例,检查该对象是否是一个特定类型(类类型或者接口类型)。
instanceof运算符使用格式如下:
1 (Object reference variable) instanceof (class/interface type)
如果运算符左侧变量所指的对象,是操作符右侧类或者接口(class/interface)的一个对象,那么结果为真。
String name="James"; Boolean result=name instanceof String;//由于name是String类型,所以返回真
如果被比较的对象兼容于右侧类型,该运算符仍然返回true。
看下面的例子:
1 class Vehicle{} 2 public class Car extends Vehicle{ 3 public static void main(String[] args){ 4 Vehicle a =new Car(); 5 Boolean result =a instanceof Car; 6 System.out.println(result); 7 } 8 }
Java运算符优先级
当多个运算符出现在一个表达式中,谁先谁后呢?