Skip to content

6.1 流程控制是什么?

流程控制的概念

流程控制是指在程序执行过程中,控制程序执行顺序的机制。在 Java 中,流程控制主要包括三种结构:顺序结构、选择结构和循环结构。

流程控制的类型

1. 顺序结构

顺序结构是最简单的流程控制结构,程序按照代码的书写顺序依次执行。

java
public class SequentialStructureExample {
    public static void main(String[] args) {
        // 顺序执行语句
        System.out.println("Step 1");
        System.out.println("Step 2");
        System.out.println("Step 3");
    }
}

2. 选择结构

选择结构根据条件的真假来决定执行哪一段代码。Java 提供了两种选择结构:if 语句和 switch 语句。

if 语句

java
public class IfStatementExample {
    public static void main(String[] args) {
        int age = 18;
        if (age >= 18) {
            System.out.println("You are an adult.");
        } else {
            System.out.println("You are a minor.");
        }
    }
}

switch 语句

java
public class SwitchStatementExample {
    public static void main(String[] args) {
        int day = 1;
        switch (day) {
            case 1:
                System.out.println("Monday");
                break;
            case 2:
                System.out.println("Tuesday");
                break;
            default:
                System.out.println("Other day");
                break;
        }
    }
}

3. 循环结构

循环结构用于重复执行一段代码,直到满足特定条件。Java 提供了三种循环结构:for 循环、while 循环和 do-while 循环。

for 循环

java
public class ForLoopExample {
    public static void main(String[] args) {
        for (int i = 1; i <= 5; i++) {
            System.out.println("Iteration: " + i);
        }
    }
}

while 循环

java
public class WhileLoopExample {
    public static void main(String[] args) {
        int i = 1;
        while (i <= 5) {
            System.out.println("Iteration: " + i);
            i++;
        }
    }
}

do-while 循环

java
public class DoWhileLoopExample {
    public static void main(String[] args) {
        int i = 1;
        do {
            System.out.println("Iteration: " + i);
            i++;
        } while (i <= 5);
    }
}

流程控制的重要性

  1. 控制程序执行顺序:根据不同的条件执行不同的代码
  2. 实现复杂逻辑:处理各种复杂的业务逻辑
  3. 提高代码效率:避免不必要的代码执行
  4. 增强代码可读性:使代码结构更清晰

流程控制的应用场景

1. 条件判断

java
// 检查用户是否登录
if (isLoggedIn) {
    // 显示用户信息
} else {
    // 显示登录页面
}

2. 多条件分支

java
// 根据成绩等级显示不同的消息
if (score >= 90) {
    System.out.println("Excellent!");
} else if (score >= 80) {
    System.out.println("Good!");
} else if (score >= 70) {
    System.out.println("Average!");
} else {
    System.out.println("Needs improvement!");
}

3. 循环处理

java
// 计算 1 到 100 的和
int sum = 0;
for (int i = 1; i <= 100; i++) {
    sum += i;
}
System.out.println("Sum: " + sum);

示例:流程控制的综合应用

java
public class FlowControlExample {
    public static void main(String[] args) {
        // 顺序结构
        System.out.println("Starting program...");
        
        // 选择结构
        int age = 20;
        if (age >= 18) {
            System.out.println("You are eligible to vote.");
        } else {
            System.out.println("You are not eligible to vote yet.");
        }
        
        // 循环结构
        System.out.println("Counting from 1 to 5:");
        for (int i = 1; i <= 5; i++) {
            System.out.println("Number: " + i);
        }
        
        // 嵌套流程控制
        System.out.println("\nChecking even and odd numbers:");
        for (int i = 1; i <= 10; i++) {
            if (i % 2 == 0) {
                System.out.println(i + " is even");
            } else {
                System.out.println(i + " is odd");
            }
        }
        
        System.out.println("Program completed.");
    }
}

常见问题

1. 无限循环

症状:程序陷入无限循环,无法正常结束

解决方案:确保循环条件最终会变为 false,或在循环体内使用 break 语句

2. 条件判断错误

症状:条件判断逻辑错误,导致程序执行不正确的分支

解决方案:仔细检查条件表达式,确保逻辑正确

3. 代码冗余

症状:重复的代码出现在多个条件分支中

解决方案:将重复代码提取到条件判断之外,或使用函数封装

总结

流程控制是 Java 编程中的重要概念,它包括:

  • 顺序结构:按照代码顺序执行
  • 选择结构:根据条件执行不同的代码
  • 循环结构:重复执行代码直到满足条件

掌握流程控制的使用方法,对于编写复杂的 Java 程序非常重要。通过合理使用流程控制,可以使代码结构更清晰,逻辑更严密,提高程序的可读性和可维护性。

© 2026 编程马·菜鸟教程 版权所有