在Java编程中,分支和循环是控制流语句的两个重要组成部分。它们使程序能够根据条件执行不同的操作,并重复执行某些操作,从而提高代码的灵活性和可重用性。
一、分支
分支结构允许程序根据条件执行不同的代码块。Java中的主要分支结构包括if
语句、if-else
语句、else-if
语句和switch
语句
1.if
if
语句用于在条件为真时执行某个代码块。
int number = 10;
if (number > 0) {
System.out.println("The number is positive.");
}
2.if-else 语句
if-else
语句用于在条件为真时执行一个代码块,而在条件为假时执行另一个代码块。
int number = -10;
if (number > 0) {
System.out.println("The number is positive.");
} else {
System.out.println("The number is negative or zero.");
}
3.else-if 语句
else-if
语句用于测试多个条件,并根据第一个为真的条件执行相应的代码块。
int number = 0;
if (number > 0) {
System.out.println("The number is positive.");
} else if (number < 0) {
System.out.println("The number is negative.");
} else {
System.out.println("The number is zero.");
}
4.switch 语句
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");
}
5.swtich VS else if
那么我们什么时候用,switch,什么时候用else if,他们都i是多分支,该如何选择呢?有什么区别呢?
(1)switch
语句
switch
语句通常用于基于一个变量的值执行多个代码块之一,值得一提的是,Java中,字符串也能作为swtich的条件:
-
多个相等条件: 当你有多个可能的值,并且每个值都有一个特定的操作时,
switch
语句是一个很好的选择。例如,根据一个数字来执行不同的操作。 -
简洁性和可读性:
switch
语句通常比多个if-else
语句更简洁和易读,特别是当你有很多分支时。 -
固定值判断:
switch
语句适用于判断固定的值,如整数、字符、字符串等。
(2) else if
-
复杂条件: 当条件不仅仅是相等比较,还涉及到范围判断或逻辑运算时,
if-else
语句是更好的选择。 -
不同类型的条件:
if-else
语句可以处理各种类型的条件,而不仅仅是固定的值判断。例如,判断某个值是否在一个范围内,或者是否满足某个布尔表达式。 -
灵活性:
if-else
语句提供了更大的灵活性,因为你可以使用任何布尔表达式作为条件。
二、循环
循环结构用于重复执行某个代码块,直到满足特定的条件。Java中的主要循环结构包括for
循环、while
循环和do-while
循环。
1.for 循环
for
循环通常用于在已知次数的情况下重复执行代码块。
for (int i = 0; i < 5; i++) {
System.out.println("The value of i is: " + i);
}
2.while 循环
while
循环用于在条件为真时重复执行代码块。条件在每次迭代前检查。
int i = 0;
while (i < 5) {
System.out.println("The value of i is: " + i);
i++;
}
3.do-while 循环
do-while
循环类似于while
循环,但它保证代码块至少执行一次,因为条件在代码块执行之后检查。
int i = 0;
do {
System.out.println("The value of i is: " + i);
i++;
} while (i < 5);
4.结束循环
break 语句
在循环中,有时需要提前结束循环,Java提供了break
和continue
语句来实现这种需求。
for (int i = 0; i < 10; i++) {
if (i == 5) {
break;
}
System.out.println("The value of i is: " + i);
}
continue 语句
continue
语句用于跳过当前迭代并开始下一次迭代。
for (int i = 0; i < 10; i++) {
if (i == 5) {
continue;
}
System.out.println("The value of i is: " + i);
}
三、总结
分支和循环是Java编程中的基本控制流语句,它们使程序能够根据条件执行不同的操作,并重复执行某些操作。通过掌握if
、if-else
、else-if
和switch
等分支语句,以及for
、while
和do-while
等循环语句,可以编写出更复杂和灵活的程序。