复合赋值运算符
- 底层自带强制转换
- ++ - -
逻辑运算符
- &:与 a&b,a和b都是true,结果为true,否则为false
- |:或 a|b,a和b都是false,结果为false,否则为true
- ^:异或,a ^ b,a和b结果不同为true,相同为false
- !:非,!a,结果和a的结果正好相反
短路逻辑运算符
- && 逻辑与 如果左测为false 右侧不再运算
- 逻辑或 如果左测为true 右侧不再运算
三元运算
- 格式:关系表达式 ? 表达式1:表达式2;
- 范例:a > b ? a : b;
计算规则:
1.首先计算关系表达式的值
2.如果值为true,表达式1的值就是运算结果
3.如果值为false,表达式2的值就是运算结果
键盘录入
- 1.导包
import java.util.Scanner
导包的动作必须出现在类定义的上边
- 2.创建对象
Scanner sc = new Scanner(System.in);
上面这个格式里面,只有sc是变量名,可以变,其他的都不允许变。
- 3.接收数据
int i = sc.nextInt();
上面这个格式里面,只有i是变量名,可以变,其他的都不允许变。
判断语句
if else
public class Test08 {
public static void main(String[] args) {
int score = 90;
if (score > 95 && score <= 100) {
System.out.println("自行车");
} else if (score > 90 && score <= 95) {
System.out.println("游乐场玩");
} else if (score > 80 && score <= 90) {
System.out.println("变形金刚");
} else {
System.out.println("打一顿");
}
}
swith
switch(表达式) {
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
…
default:
语句体n+1;
[break;]
}
eg:
public static void main(String[] args) {
int week = 3;
switch (week) {
case 1:
System.out.println("星期1");
break;
case 2:
System.out.println("星期2");
break;
case 3:
System.out.println("星期3");
break;
case 4:
System.out.println("星期4");
default:
System.out.println("啥都不是");
break;
}
}
case穿透
如果匹配到的case那里没有break
会继续向下执行 不再匹配 直到遇到下一个break 或者switch结束