日期: 2026/07/09
作者: WanJl
if...elseif)if (条件) {
// 条件为 true 时执行
}
true 执行代码块,否则跳过。if...else)if (条件) {
// true
} else {
// false
}
ifif (条件1) {
if (条件2) {
// 条件1 && 条件2 成立
} else {
// 条件1 成立,条件2 不成立
}
} else {
// 条件1 不成立
}
if...else if...else 结构if (条件1) {
// 条件1 成立
} else if (条件2) {
// 条件1 不成立,条件2 成立
} else {
// 全部不成立
}
equals() 方法,== 比较的是引用地址,而非内容。for 循环for (初始化变量; 循环条件; 变量更新) {
// 循环体
}
执行流程:
true 执行循环体,false 跳出while 循环初始化变量;
while (循环条件) {
// 循环体
// 变量更新;
}
do...while 循环初始化变量;
do {
// 循环体
// 变量更新;
} while (循环条件);
| 循环类型 | 特点 | 最少执行次数 |
|---|---|---|
for |
初始化/条件/更新集中管理 | 0 次 |
while |
先判断后执行 | 0 次 |
do...while |
先执行后判断 | 1 次 |
int a = 5;
++a; // 前自增:先自增再使用
a++; // 后自增:先使用再自增
int number = 12345;
int count = 0;
while (number != 0) {
number /= 10; // 每次除以 10,去掉一位
count++; // 位数 +1
}
// 输出:5
int number = 12345;
int sum = 0;
while (number != 0) {
sum += number % 10; // 取个位累加
number /= 10; // 去掉个位
}
// 1+2+3+4+5 = 15
int number = 12345;
int rev = 0;
while (number != 0) {
rev = rev * 10 + (number % 10); // 每次取个位拼接到 rev
number /= 10;
}
// 输出:54321
核心思想:number % 10 取个位 → number / 10 去掉个位 → 循环直到 0。
*
**
***
****
*****
for (int i = 1; i <= 5; i++) {
for (int j = 0; j < i; j++) {
System.out.print("*");
}
System.out.println();
}
*****
****
***
**
*
for (int i = 1; i <= 5; i++) {
for (int j = 5; j >= i; j--) {
System.out.print("*");
}
System.out.println();
}
*****
* *
* *
* *
*****
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 5; j++) {
if (i == 0 || i == 4) { // 第一行和最后一行
System.out.print("*");
} else {
if (j == 0 || j == 4) { // 第一列和最后一列
System.out.print("*");
} else {
System.out.print(" ");
}
}
}
System.out.println();
}
规律:边框输出 *,内部输出空格。
*
***
*****
***
*
for (int i = 1; i <= 5; i++) {
for (int j = 1; j <= 5; j++) {
if (i == 1 || i == 5) { // 第 1、5 行
if (j == 3) System.out.print("*");
else System.out.print(" ");
} else if (i == 2 || i == 4) { // 第 2、4 行
if (j == 1 || j == 5) System.out.print(" ");
else System.out.print("*");
} else { // 第 3 行
System.out.print("*");
}
}
System.out.println();
}
| 知识点 | 说明 |
|---|---|
if...else |
分支结构:单分支、双分支、嵌套、else if 链 |
for 循环 |
初始化/条件/更新集中管理,适合固定次数循环 |
while 循环 |
先判断后执行,适合条件驱动循环 |
do...while 循环 |
先执行后判断,至少执行一次 |
++i / i++ |
前自增(先增后用)、后自增(先用后增) |
| 数字位运算 | % 10 取个位,/ 10 去掉个位 |
| 嵌套循环 | 外层控制行数,内层控制每行内容 |
| 图形打印规律 | 分析行列索引关系,用条件控制输出内容 |
1~1001~100 的和1~100 的和(参考 Demo02)