Java运算符
表达式
表达式是由运算符和操作数组成的
表达式如下:
- 6 仅仅一个数字
- num1 仅仅一个变量
- num1 + num2 两个变量<操作数>和一个运算符
- res = num1 + mum2 加法运算 赋值运算
运算符
- 算术运算符
- 赋值运算符
- 关系运算符
- 逻辑运算符
- 条件运算符
- 位运算符
赋值运算符
int n = 5;
int n;
n = 5;
格式: 变量 = 表达式;
赋值运算符的运算方向是 右向左 <----
复合赋值运算符
x=0
运算符 | 表达式 | 计算 | 结果 |
---|---|---|---|
+= | x+=1 | x=x+1 | 1 |
-= | x-=1 | x=x-1 | -1 |
*= | x*=1 | x=x*1 | 1 |
/= | x/=1 | x=x/1 | 1 |
%= | x%=1 | x=x%1 | 0 |
算术运算符
运算符 | 名称 |
---|---|
+ | 加法 |
- | 减法 |
* | 乘法 |
/ | 除法 |
% | 取余数 |
++ | 自增1 |
– | 自减1 |
关系运算符
运算符 | 名称 | 表达式 | 结果 |
---|---|---|---|
> | 大于 | 4>2 | true |
< | 小于 | 2<1 | false |
>= | 大于等于 | 4>=2 | true |
<= | 大于 | 2<=2 | true |
== | 等于 | 4==2 | false |
!= | 不等于 | 4!=2 | true |
字符之间也可以来比较,比较的时候比较的是所对应的ASCII码
‘A’<‘B’ false
关系运算符比较的是值,值相等就是true
float f = 5.0f;double d = 5.0d; long l = 5;
f,d,l == 比较均返回true
逻辑运算符
名称 | 运算符 | 表达式 |
---|---|---|
于 | &&或者& | operator1&&operator2 |
或 | ||或| | operator1||operator2 |
非 | ! | !operator |
注意:这里的operator必须式boolean类型的数据
&&和&的区别式,前者短路运算,只要左侧出现的结果为false就不计算右侧,而&需要两侧均计算
相对于||和|也是这种区别
三元运算:
布尔表达式?表达式1:表达式2;
如果布尔为true,返回表达式1的结果否则返回表达式2的结果
运算符的优先级
- ()
- !,++,–
- *,/,%
- +,-
- <,<=,>,>=
- ==,!=
- &&
- ||,
- =,+=,*=,/=,%=,-=
分支结构
格式:
if (条件) <一条语句,可省略大括号>
if (条件) {
<语句块>
}
if (条件) {
<语句块>
} else {
<语句块>
}
import java.util.Scanner;
public class RunYearDemo {
public static void main(String[] args) {
//
System.out.println("请输入一个年份(判断闰年):");
Scanner sc = new Scanner(System.in);
int year = sc.nextInt();
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
System.out.println(year + "是闰年");
} else {
System.out.println(year + "非闰年");
}
}