在上一篇文章中,我们介绍了Java基础语法之运算符和表达式(Java基础语法之运算符和表达式),在Java编程中,控制流结构决定了程序的执行顺序。通过使用不同的控制流语句,可以实现条件判断、循环执行和跳转操作。
文章目录
1. 控制流结构类型
Java中的控制流结构包括:
- 条件语句
- 循环语句
- 跳转语句
条件语句
条件语句用于根据条件的真假来决定执行的代码块。
if
语句if-else
语句else-if
语句switch
语句
-
if 语句
public class IfStatement { public static void main(String[] args) { int number = 10; if (number > 0) { System.out.println("Number is positive."); } } }
-
if-else 语句
public class IfElseStatement { public static void main(String[] args) { int number = -10; if (number > 0) { System.out.println("Number is positive."); } else { System.out.println("Number is negative or zero."); } } }
-
else-if 语句
public class ElseIfStatement { public static void main(String[] args) { int number = 0; if (number > 0) { System.out.println("Number is positive."); } else if (number < 0) { System.out.println("Number is negative."); } else { System.out.println("Number is zero."); } } }
-
switch 语句
public class SwitchStatement { public static void main(String[] args) { int day = 3; switch (day) { case 1: System.out.println("Monday"); break; case 2: System.out.println("Tuesday"); break; case 3: System.out.println("Wednesday"); break; case 4: System.out.println("Thursday"); break; case 5: System.out.println("Friday"); break; case 6: System.out.println("Saturday"); break; case 7: System.out.println("Sunday"); break; default: System.out.println("Invalid day"); break; } } }
-
注意事项:
- 使用
if
和else if
时,确保条件是互斥的,否则可能会产生意外的结果。 - 在
switch
语句中,每个case
后面都应有break
,否则会发生“贯穿”现象,即程序会继续执行后续的case
语句。
- 使用
循环语句
循环语句用于重复执行代码块。
for
循环while
循环do-while
循环- 增强型
for
循环
-
for 循环
public class ForLoop { public static void main(String[] args) { for (int i = 1; i <= 5; i++) { System.out.println("Count: " + i); } } }
-
while 循环
public class WhileLoop { public static void main(String[] args) { int i = 1; while (i <= 5) { System.out.println("Count: " + i); i++; } } }
-
do-while 循环
public class DoWhileLoop { public static void main(String[] args) { int i = 1; do { System.out.println("Count: " + i); i++; } while (i <= 5); } }
-
增强型 for 循环
public class EnhancedForLoop { public static void main(String[] args) { int[] numbers = {1, 2, 3, 4, 5}; for (int number : numbers) { System.out.println("Number: " + number); } } }
-
注意事项:
- 在使用
for
或while
循环时,确保循环条件最终会变为false
,否则会造成死循环。 do-while
循环至少会执行一次,即使条件最初为false
。- 增强型
for
循环只能用于数组或实现了Iterable
接口的集合。
- 在使用
跳转语句
跳转语句用于改变程序的执行顺序。
break
语句continue
语句return
语句
-
break 语句
public class BreakStatement { public static void main(String[] args) { for (int i = 1; i <= 5; i++) { if (i == 3) { break; } System.out.println("Count: " + i); } } }
-
continue 语句
public class ContinueStatement { public static void main(String[] args) { for (int i = 1; i <= 5; i++) { if (i == 3) { continue; } System.out.println("Count: " + i); } } }
-
return 语句
public class ReturnStatement { public static void main(String[] args) { System.out.println("Returned value: " + getValue()); } public static int getValue() { return 10; } }
-
注意事项:
break
语句通常用于提前退出循环或者跳出switch
语句。continue
语句用于跳过当前循环迭代,进入下一次循环。return
语句用于结束方法的执行并返回一个值。
2. 知识结构图解
3. 示例代码整合
以下示例代码展示了各种控制流结构的使用:
public class ControlFlowExamples {
public static void main(String[] args) {
// if 语句
int number = 10;
if (number > 0) {
System.out.println("Number is positive.");
}
// if-else 语句
int number2 = -10;
if (number2 > 0) {
System.out.println("Number is positive.");
} else {
System.out.println("Number is negative or zero.");
}
// else-if 语句
int number3 = 0;
if (number3 > 0) {
System.out.println("Number is positive.");
} else if (number3 < 0) {
System.out.println("Number is negative.");
} else {
System.out.println("Number is zero.");
}
// switch 语句
int day = 3;
switch (day) {
case 1:
System.out.println("Monday");
break;
case 2:
System.out.println("Tuesday");
break;
case 3:
System.out.println("Wednesday");
break;
case 4:
System.out.println("Thursday");
break;
case 5:
System.out.println("Friday");
break;
case 6:
System.out.println("Saturday");
break;
case 7:
System.out.println("Sunday");
break;
default:
System.out.println("Invalid day");
break;
}
// for 循环
for (int i = 1; i <= 5; i++) {
System.out.println("Count: " + i);
}
// while 循环
int i = 1;
while (i <= 5) {
System.out.println("Count: " + i);
i++;
}
// do-while 循环
int j = 1;
do {
System.out.println("Count: " + j);
j++;
} while (j <= 5);
// 增强型 for 循环
int[] numbers = {1, 2, 3, 4, 5};
for (int number4 : numbers) {
System.out.println("Number: " + number4);
}
// break 语句
for (int k = 1; k <= 5; k++) {
if (k == 3) {
break;
}
System.out.println("Count: " + k);
}
// continue 语句
for (int l = 1; l <= 5; l++) {
if (l == 3) {
continue;
}
System.out.println("Count: " + l);
}
// return 语句
System.out.println("Returned value: " + getValue());
}
public static int getValue() {
return 10;
}
}
注意事项总结
-
条件语句:
- 使用
if
和else if
时,确保条件是互斥的,否则可能会产生意外的结果。 - 在
switch
语句中,每个case
后面都应有break
,否则会发生“贯穿”现象,即程序会继续执行后续的case
语句。
- 使用
-
循环语句:
- 在使用
for
或while
循环时,确保循环条件最终会变为false
,否则会造成死循环。 do-while
循环至少会执行一次,即使条件最初为false
。- 增强型
for
循环只能用于数组或实现了Iterable
接口的集合。
- 在使用
-
跳转语句:
break
语句通常用于提前退出循环或者跳出switch
语句。continue
语句用于跳过当前循环迭代,进入下一次循环。return
语句用于结束方法的执行并返回一个值。
结语
控制流语句是Java编程中至关重要的一部分。通过熟练掌握各种控制流结构,可以编写出逻辑严谨、功能丰富的程序。在接下来的文章中,我们将介绍Java中数据结构–数组以及更多Java编程的基础知识,敬请期待!
标签:语句,break,Java,控制流,System,语法,println,public,out From: https://blog.csdn.net/QWERTYwqj/article/details/140904932