运算符就像数学里的 +、-、×、÷,或是生活里的 “是不是”“有没有”,Java 里分几类,每类都有明确用途,先看最常用的:
新手注意:整数相除只取整数部分(比如 9/2=4),想算小数要把其中一个数改成浮点数(9.0/2=4.5)。
最基础的是=(不是 “等于”,是 “赋值”),还有简化版:
int a = 10; // 把10赋值给a
a += 5; // 等价于a = a+5 → a=15
a -= 3; // 等价于a = a-3 → a=12
a *= 2; // 等价于a = a×2 → a=24
新手踩坑:别把=和==搞混!a=5是赋值,a==5是判断 a 是不是等于 5。
实用点:短路与&&如果第一个条件是假,第二个条件就不执行(省性能),比如(5<3)&&(10/0=0)不会报错,因为第一个条件假,直接跳过第二个。
默认代码是从上到下顺序执行,流程控制就是让代码 “选择性执行”“重复执行”,核心分 3 类:
// 基础if:满足条件执行
int score = 85;
if (score >= 60) {
System.out.println("及格了"); // 执行这行
}
// if-else:二选一
if (score >= 90) {
System.out.println("优秀");
} else {
System.out.println("非优秀"); // 执行这行
}
// if-else if-else:多选一
if (score >= 90) {
System.out.println("优秀");
} else if (score >= 80) {
System.out.println("良好"); // 执行这行
} else if (score >= 60) {
System.out.println("及格");
} else {
System.out.println("不及格");
}
// Java 12+支持简化写法,更清爽
int week = 3;
switch (week) {
case 1 -> System.out.println("周一");
case 2 -> System.out.println("周二");
case 3 -> System.out.println("周三"); // 执行这行
default -> System.out.println("无效星期"); // 都不匹配时执行
}
// 旧版写法(也得认识)
switch (week) {
case 1:
System.out.println("周一");
break; // 跳出switch,避免执行后续case
case 3:
System.out.println("周三");
break;
default:
System.out.println("无效星期");
}
// 格式:for(初始化变量; 循环条件; 变量更新) { 循环体 }
// 示例:打印1到5
for (int i = 1; i <= 5; i++) {
System.out.println(i); // 依次输出1、2、3、4、5
}
// 增强for循环(遍历数组/集合)
int[] nums = {10, 20, 30};
for (int num : nums) {
System.out.println(num); // 依次输出10、20、30
}
// 格式:while(循环条件) { 循环体 }
// 示例:计算1+2+...+100
int sum = 0;
int i = 1;
while (i <= 100) {
sum += i; // sum = sum + i
i++;
}
System.out.println(sum); // 结果5050
// 格式:do { 循环体 } while(循环条件);
// 示例:不管条件是否满足,先执行一次
int a = 5;
do {
System.out.println("执行了"); // 会输出这行
} while (a < 0); // 条件假,循环结束
- break:跳出当前循环 /switch,比如循环到第 3 次就停:
for (int i = 1; i <= 5; i++) {
if (i == 3) {
break; // 跳出循环
}
System.out.println(i); // 只输出1、2
}
- continue:跳过当前次循环,执行下一次,比如跳过 3:
for (int i = 1; i <= 5; i++) {
if (i == 3) {
continue; // 跳过本次
}
System.out.println(i); // 输出1、2、4、5
}
- 运算符优先级:不用死记,不确定就加括号(比如
(a+b)*c比a+b*c清晰);
- 循环别写死:一定要有让循环结束的条件(比如
i++),不然会无限循环;
- switch 的 case 要加 break(旧版):不然会 “穿透”(执行完当前 case 还执行下一个);
- 逻辑运算符短路特性:
&&和||会跳过不必要的判断,别依赖第二个条件的执行。
- 运算符:核心是算术(计算)、比较(判断)、逻辑(组合判断),是流程控制的 “判断依据”;
- 流程控制:分支(if/switch)决定 “执行哪段代码”,循环(for/while)决定 “重复执行多少次”,跳转(break/continue)微调执行流程;
- 新手先练基础用法,比如用循环算累加、用 if 判断成绩、用 switch 做菜单,练熟了就掌握 Java 基础逻辑了。