Java学习资料
Java学习资料
Java学习资料
在 Java 编程中,流程控制语句是构建程序逻辑的关键部分,它决定了程序的执行顺序和走向。通过合理运用这些语句,开发者能够实现各种复杂的业务逻辑,让程序更加灵活和智能。
顺序结构
顺序结构是程序中最基本的执行结构,它按照代码书写的先后顺序依次执行。例如:
int num1 = 5;
int num2 = 3;
int sum = num1 + num2;
System.out.println("两数之和为:" + sum);
在这段代码中,首先声明并初始化变量num1和num2,然后计算它们的和并赋值给sum,最后输出结果。每一行代码按顺序执行,这就是顺序结构的体现。顺序结构在程序中无处不在,它为其他更复杂的流程控制提供了基础。
选择结构
if - else 语句
if - else 语句用于根据条件判断来决定程序的执行路径。其基本语法为:
if (条件表达式) {// 当条件表达式为true时执行的代码块
} else {// 当条件表达式为false时执行的代码块
}
例如,判断一个数是否为偶数:
int number = 8;
if (number % 2 == 0) {System.out.println(number + " 是偶数");
} else {System.out.println(number + " 是奇数");
}
当条件表达式只有一条语句时,可以省略大括号,但为了代码的可读性,建议保留。
switch - case 语句
switch - case 语句用于多分支选择,根据一个表达式的值来选择执行不同的代码块。语法如下:
switch (表达式) {case 值1:// 当表达式的值等于值1时执行的代码break;case 值2:// 当表达式的值等于值2时执行的代码break;// 可以有多个case分支default:// 当表达式的值与所有case值都不匹配时执行的代码break;
}
例如,根据用户输入的数字输出对应的星期几:
int day = 3;
switch (day) {case 1:System.out.println("星期一");break;case 2:System.out.println("星期二");break;case 3:System.out.println("星期三");break;case 4:System.out.println("星期四");break;case 5:System.out.println("星期五");break;case 6:System.out.println("星期六");break;case 7:System.out.println("星期日");break;default:System.out.println("输入的数字无效");break;
}
在 switch - case 语句中,break语句用于跳出当前的 switch 块,如果没有break,程序会继续执行下一个 case 分支的代码,直到遇到break或 switch 块结束。
循环结构
for 循环
for 循环用于已知循环次数的场景,其语法为:
for (初始化表达式; 条件表达式; 更新表达式) {// 循环体代码
}
例如,计算 1 到 10 的累加和:
int sum = 0;
for (int i = 1; i <= 10; i++) {sum += i;
}
System.out.println("1到10的累加和为:" + sum);
在 for 循环中,初始化表达式在循环开始前执行一次,条件表达式在每次循环开始时进行判断,若为 true 则执行循环体,更新表达式在每次循环结束后执行,然后再次判断条件表达式,直到条件表达式为 false 时循环结束。
while 循环
while 循环用于在条件满足时重复执行一段代码,其语法为:
while (条件表达式) {// 循环体代码
}
例如,输出 1 到 5 的数字:
int num = 1;
while (num <= 5) {System.out.println(num);num++;
}
在 while 循环中,先判断条件表达式,若为 true 则执行循环体,执行完循环体后再次判断条件表达式,直到条件表达式为 false 时循环结束。需要注意的是,在循环体中一定要有改变条件表达式的语句,否则会造成死循环。
do - while 循环
do - while 循环与 while 循环类似,但它会先执行一次循环体,然后再判断条件表达式。语法为:
do {// 循环体代码
} while (条件表达式);
例如,让用户输入一个数字,直到输入的数字大于 10 为止:
import java.util.Scanner;Scanner scanner = new Scanner(System.in);
int input;
do {System.out.println("请输入一个数字:");input = scanner.nextInt();
} while (input <= 10);
System.out.println("你输入的数字大于10");
do - while 循环适用于需要先执行一次操作,再根据结果判断是否继续循环的场景。
跳转语句
break 语句
break 语句用于跳出当前循环或 switch 块。在循环中,当满足某个条件时,可以使用 break 语句提前结束循环。例如:
for (int i = 1; i <= 10; i++) {if (i == 5) {break;}System.out.println(i);
}
上述代码会输出 1 到 4,当i等于 5 时,遇到 break 语句,循环结束。
continue 语句
continue 语句用于跳过当前循环的剩余部分,直接进入下一次循环。例如:
for (int i = 1; i <= 10; i++) {if (i % 2 == 0) {continue;}System.out.println(i);
}
这段代码会输出 1 到 10 中的所有奇数,当i为偶数时,遇到 continue 语句,跳过本次循环的输出语句,直接进入下一次循环。
return 语句
return 语句用于从方法中返回一个值,并结束方法的执行。在有返回值的方法中,必须使用 return 语句返回一个符合方法返回类型的值。例如:
public static int add(int num1, int num2) {return num1 + num2;
}
在上述方法中,计算两个数的和并通过 return 语句返回结果。在无返回值的方法(返回类型为 void)中,也可以使用 return 语句提前结束方法的执行,例如:
public static void printNumber(int num) {if (num < 0) {return;}System.out.println(num);
}
当输入的数字为负数时,遇到 return 语句,方法提前结束,不会输出数字。
Java 的流程控制语句为开发者提供了丰富的工具来控制程序的执行流程,通过灵活运用这些语句,可以实现各种复杂的业务逻辑和功能需求。无论是简单的顺序执行,还是根据条件进行选择和循环,以及通过跳转语句灵活控制程序走向,它们都是编写高效、可靠 Java 程序的基础。