目录
(2)continue - 跳过本次循环剩余部分,进入下一次循环
一 . 程序逻辑
程序逻辑是指程序中代码执行的顺序和流程控制方式。Java 程序的基本执行顺序是从上到下、从左到右,但可以通过分支结构和循环结构改变执行流程。
二 . 分支结构
1 . if分支结构
概念解释:if 语句通过判断布尔表达式的值(true/false)来决定是否执行特定代码块。
注意事项:
条件表达式必须返回布尔值
代码块如果只有一条语句,可以省略大括号(博哥不推荐)
else if 可以有多个
(1)基本形式
最简单的判断形式,用于一个条件的一次判断
if (条件表达式) {
// 条件为 true 时执行的代码
}
(2)if-else 形式
这种判断形式,用于将程序改为两路分支,要么 if 要么 else
if (条件表达式) {
// 条件为 true 时执行的代码
} else {
// 条件为 false 时执行的代码
}
(3)多条件 else-if 形式
这个判断形式,用于多个条件的一次判断,判断在哪输出
(博哥有话说:类似于switch)
if (条件1) {
// 条件1为 true 时执行的代码
} else if (条件2) {
// 条件2为 true 时执行的代码
} else {
// 所有条件都为 false 时执行的代码
}
2.switch分支结构
概念解释:switch 语句基于一个表达式的值,选择匹配的 case 分支执行。
(1)基本形式
这种判断形式,用于将程序改为多路分支。
(博哥有话说:如果是范围用多条件 else-if 形式,如果是单个值或是多个值不是一个范围用switch)
switch (表达式) {
case 值1:
// 表达式等于值1时执行的代码
break;
case 值2:
// 表达式等于值2时执行的代码
break;
// 可以有任意数量的 case 语句
default:
// 表达式不等于任何 case 值时执行的代码
}
(2)多值 case
多个值之间,输出一个结果,用多值 case 简化了代码
// 多值 case 示例
switch (day) {
case 1, 2, 3, 4, 5 -> System.out.println("工作日");
case 6, 7 -> System.out.println("周末");
default -> System.out.println("无效的日期");
}
3.yield局部返回
// yield 用于 switch 表达式中返回值
String dayType = switch (day) {
case 1, 2, 3, 4, 5 -> "工作日";
case 6, 7 -> {
System.out.println("这是周末");
yield "周末"; // 使用 yield 返回值
}
default -> "无效";
};
System.out.println("今天是: " + dayType);
三 . 循环结构
1.while循环结构
概念解释:while 循环在条件为真时重复执行代码块。
(1)基本形式
(博哥有话说:在不知道循环次数的情况下使用while)
// 基本 while 循环
while (条件表达式) {
// 循环体代码
// 需要改变条件表达式中的变量,否则可能造成无限循环
}
(2)do-while
(博哥有话说:在do-while中,无条件执行一次do里面的代码)
// do-while 循环 (至少执行一次)
do {
// 循环体代码
} while (条件表达式);
2.for循环结构
概念解释:for 循环提供更紧凑的循环语法,集成了初始化、条件判断和迭代。
// 基本 for 循环
for (初始化; 条件表达式; 更新) {
// 循环体代码
}
// 增强 for 循环 (for-each)
for (元素类型 变量名 : 数组或集合) {
// 循环体代码
}
(博哥有话说:在未来我们还会学到一些循环遍历,关注下一个博客哦)
3.循环控制语句
(1)break - 跳出当前循环
// break - 跳出当前循环
for (int i = 0; i < 10; i++) {
if (i == 5) {
break; // 当 i 等于 5 时跳出循环
}
System.out.println(i);
}
(2)continue - 跳过本次循环剩余部分,进入下一次循环
// continue - 跳过本次循环剩余部分,进入下一次循环
for (int i = 0; i < 10; i++) {
if (i % 2 == 0) {
continue; // 跳过偶数
}
System.out.println("奇数: " + i);
}
4.循环嵌套
概念解释:在一个循环体内包含另一个完整的循环结构。
// 打印九九乘法表
for (int i = 1; i <= 9; i++) {
for (int j = 1; j <= i; j++) {
System.out.print(j + "×" + i + "=" + (i * j) + "\t");
}
System.out.println(); // 换行
}
四 . 方法
1.方法基本定义
概念解释:方法是完成特定功能的代码块,可以重复调用。
// 方法定义语法
[访问修饰符] [static] 返回类型 方法名([参数列表]) {
// 方法体
[return 返回值;]
}
// 示例
public class MethodDemo {
// 无参数无返回值方法
public static void greet() {
System.out.println("你好,世界!");
}
// 带参数无返回值方法
public static void greetPerson(String name) {
System.out.println("你好," + name + "!");
}
// 带参数有返回值方法
public static int add(int a, int b) {
return a + b;
}
public static void main(String[] args) {
greet(); // 调用无参方法
greetPerson("张三"); // 调用带参方法
int sum = add(5, 3); // 调用有返回值方法
System.out.println("5 + 3 = " + sum);
}
}
2.方法重载
方法重载的要点:
-
方法名必须相同
-
参数列表必须不同(参数类型、个数或顺序不同)
-
返回类型可以相同也可以不同
-
仅返回类型不同不足以构成重载(会编译错误)
(博哥有话说:不用认为选择哪个方法,Java底层会帮助你自动选择)
// 方法重载:同一类中方法名相同但参数列表不同
public class Calculator {
// 整数相加
public static int add(int a, int b) {
return a + b;
}
// 三个整数相加
public static int add(int a, int b, int c) {
return a + b + c;
}
// 浮点数相加
public static double add(double a, double b) {
return a + b;
}
// 字符串连接
public static String add(String a, String b) {
return a + b;
}
public static void main(String[] args) {
System.out.println(add(2, 3)); // 调用 int add(int, int)
System.out.println(add(2, 3, 5)); // 调用 int add(int, int, int)
System.out.println(add(2.5, 3.7)); // 调用 double add(double, double)
System.out.println(add("Hello", "World")); // 调用 String add(String, String)
}
}

被折叠的 条评论
为什么被折叠?



