1 运算符
操作数 | 运算符 | 操作数 | 结果 |
---|---|---|---|
X | + | 20 | 表达式 |
2 一元运算符
一元运算符 | 意义 | 含义 |
---|---|---|
+ | 正号 | +5;//表示正数5 |
- | 负号 | y=-x;//表示负x的值赋给变量y |
! | NOT,非 | !x;//x的NOT运算,若!x为true,则x返回false。若!x为false,则返回true。 |
~ | 取补码 | ~x;表示取变量x的补码 |
++ | 变量自增1 | i++;变量自增1 |
-- | 变量自减1 | i--;变量自减1 |
&& | 与(AND) | 两个操作数为真,运算结果才为真,两个&&表示判断前面为假以后短路后面不判断,一个&相反判断前面为真后面继续判断 |
两11竖线 | 或(OR) | 两个操作数只要一个为真,运算结果为真,两个竖线11表示前面判断为真后面不判断短路,一个竖线1表示前面为真后面继续判断 |
! | 非(NOT) | 返回与操作数相反的布尔值 |
? | 三元运算符 | 有三个操作数,先判断条件,如果条件满足就会赋予一个变量一个冒号之前的指定内容,不满足反之。(int x=10;int y=30; int sum=x>y?x:y)由于x<y所以赋值给y |
短路逻辑运算符的使用
public class Main
{
public static void main(String[] args)
{
int i=5;
boolean flag=(i<3)&&(i<4); //&&短路,(i<4)系统不做运算。计算第一个满足要求以后不计算第二个。
System.out.println(flag);
flag=(i>4)||(i>3); // ||短路,(i>3)不做系统运算。计算满足第一个要求以后不计算第二个
System.out.println(flag);
}
}
自增++和自减--
public class Main
{
public static void main(String[] args)
{
int a=3;int b=4;
System.out.print("a="+a);
System.out.println(", a++="+(a++)+", a="+a);
//a++是先执行操作,在自增1
System.out.print("b="+b);
System.out.println(", ++b="+(++b)+", b="+a);
//++b是先自增1,在执行操作
}
}