Skip to content

六、流程控制

流程控制包括顺序控制、条件控制和循环控制

一、条件控制

1、if和else语句

if...else是流程语句中基本的语句,其中else是非必需的

(1)if语句

java
int number=101;
if(number>100){
	...
}

(2)if...else语句

java
if(布尔表达式){
	//布尔表达式为true执行
}else{
	//布尔表达式为false执行
}

(3)if...else if语句

如果满足该条件就执行该条件下的语句,如果不满足该条件也可以去判断是否满足其他条件,进而去执行其他条件下的语句

java
if(条件1){
	//如果条件1为true将执行的语句
}else if(条件2){
	//如果条件1为false,条件2为true
}else if (条件3){
	//如果条件1为false,条件2为false,条件3为true
}

else语句也可以和else if语句同时使用,但是只能出现在所有条件语句的最后,表示“如果不满足上面所有条件时则执行该条语句的内容”

java
if(条件1){
	//如果条件1为true将执行的语句
}else if(条件2){
	//如果条件1为false,条件2为true
}else if (条件3){
	//如果条件1为false,条件2为false,条件3为true
}else{
	//以上条件都不满足,则执行
}

2、switch语句

格式:

java
switch(判断变量){
	case 值1:[执行语句]; break;
	case 值2:[执行语句]; break;
	case 值3:[执行语句]; break;
	...
	default: [执行语句];
}
  • switch语句是一种多分支并行语句,它允许多个分支语句并行存在,并用关键字case标识
  • switch语句首先计算参数的值,如果和某一个分支语句标识的值相同,则执行该分支语句中的代码,直到关键字break为止
  • 如果该分支语句中没有break关键字,则会继续判断后面的case分支语句,直到遇到break为止
  • switch语句同时提供了默认执行的机制,当没有一个分支语句的值与switch人参的值相同时,则会执行关键字default分支中的语句
  • switch语句中待判断的变量必须为int、short、char或字符串String(long、foat、double和其他类都不可以)

二、循环控制语句

1、for循环语句

格式

java
for([初始化表达式];[布尔表达式];[步进表达式]){
	//循环体内执行语句
}

for循环中可以使用逗号表达式来定义域多个相同类型的变量

java
for(int i=0,j=0;i<5;i++,j++){
	//循环体内执行语句
}

2、foreach循环语句

格式

java
for([类型] 变量:遍历对象){
	//循环体内执行语句
}

示例

java
String str[]={"二","狗","快","跑"};
for(String str : strs){
	System.out.println("每次取出来的变量值为:"+str);
}

3、while循环语句

格式

java
while([布尔表达式]){
	//循环内执行语句
}

4、do...while循环语句

格式

java
do{
	//循环内执行语句
}while([布尔表达式])

三、跳转语句

1、continue语句

格式

java
continue;

示例

java
for(int i=0;i<5;i++){
	if(i==3){
		//执行语句
		continue;
	}
}

2、break语句

格式

java
break;

示例

java
for(int i=0;i<5;i++){
	if(i==3){
		//执行语句
		break;
	}
}

3、goto语句

goto语句能控制程序从一个地方跳转到另一处执行。

  • 当程序复杂时,goto的滥用会导致程序流程控制变得异常复杂,因为随着goto定义的地方增多,产生的错误也会越来越多,并且代码会难以维护。
  • 虽然goto是Java中保留的关键字,正是由于Java对一些应用场景的限制,令Java的语言特性增强,使开发者不能随意地编写和更改程序流程控制,这也保证了Java语言程序的健壮和稳定。

4、return语句

在 Java 中,return 语句用于两个主要目的:

  1. 方法的返回值:在方法中使用 return 语句来返回一个值,这个值的类型必须与方法声明的返回类型相匹配

    java
    public int add(int a, int b) {
        return a + b;
    }

    这个例子中,add 方法返回两个整数相加的结果

  2. 跳出当前方法return 语句还可以用于提前结束方法的执行,并返回到调用方法的地方。在方法中遇到 return 语句时,方法的执行将立即停止,返回到调用方法的地方。这在任何方法中都可以使用,包括 void 方法。

    java
    public void printNumbers() {
        for (int i = 0; i < 10; i++) {
            if (i == 5) {
                return; // 提前结束方法的执行
            }
            System.out.println(i);
        }
    }