Java表达式
表达式是由运算符和操作数(运算子)组成的。
int sum=num1+num2;//这就是一个表达式
//+加号和=等号是运算符,num1和num2和sum是操作数
Java运算符
算数运算符
一元运算符
- “-“,取负运算;
- “++”,自加一,
a++,先取值在加一,也叫后增量
++a,先自加再取值,也叫前增量
- “—“,自减一,
a—,先取值在自减
—a,先自减再取值
二元运算符
- +,求和运算;
- -,相减运算;
- *,相乘运算;
- /,相除运算,求两个数之商;
- %,取余;
赋值运算符
- =,变量或常量指定数值的符号;
- +=,a+=2—->a=a+2;
- -=,a-=2—->a=a-2;
- =,a=2—->a=a*2;
- /=,a/=2—->a=a/2;
- %=,a%=2—->a=a%2;
关系运算符
在Java中,==只能用来判断基本数据类型是否相同,如果用来比较引用数据类型,比较的是两个引用数据类型在内存中地址是否相同。
对于字符串,需要用到equals()。
逻辑运算符
- 短路与,&&,当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false;
- 短路或,||,当运算符有一边为true时,整个运算结果为true;
- 逻辑非,!,相当于取反;
- 逻辑与,&,当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false;
- 逻辑或,|,当运算符有一边为true时,整个运算结果为true;
短路与&&和逻辑与&的区别:
&&是当第一个条件不成立,后面的条件均不进行判断,返回false,
&是无论第一个判断条件是否成立,逻辑运算符前后两个条件都会进行判断;
短路或||和逻辑或|的区别:
||是当第一个条件成立,后面的条件均不进行判断,返回true,
|是无论第一个判断条件是否成立,逻辑运算符前后两个条件都会进行判断;
条件运算符
Java中的条件运算符指的是三目运算符。
int age = 16;
String ageStr = age > 18 ? "成年" : "未成年";
System.out.println(ageStr); // 未成年
位运算符
运算速度最快的就是位运算符。
优先级比较