【Salesforce Apex 教程】3. Apex基础② 控制结构
2023年09月15日
文章浏览:267

3.2 控制结构(参考Control Flow Statements

控制结构是编程中用于控制代码执行流程的关键部分。

3.2.1 条件语句

在 Apex 中,你可以使用条件语句来根据条件决定代码的执行路径。本章将介绍条件语句,包括 if 和 switch 语句。

3.2.1.1 if 语句

if 语句是一种常见的条件语句,它根据条件的真假来决定代码的执行路径。在 Apex 中,你可以使用以下形式的 if 语句:

if (condition) {
    // 当条件为真时执行这里的代码
} else {
    // 当条件为假时执行这里的代码
}

condition 是一个布尔表达式,可以是 true 或 false。

如果 condition 为 true,那么 if 语句块中的代码将被执行。

如果 condition 为 false,那么 else 语句块中的代码将被执行(如果存在 else 部分)。

示例:

Integer x = 10;

if (x > 5) {
    System.debug('x 大于 5');
} else {
    System.debug('x 不大于 5');
}

3.2.1.2 switch 语句

switch 语句允许你根据不同的情况来执行不同的代码块。在 Apex 中,switch 语句支持以下参数类型:

·整数(Integer)、

·字符串(String)、

·枚举(Enum)

·SObject(Salesforce 对象)。

String dayOfWeek = 'Monday';

switch on dayOfWeek {
    when 'Monday' {
        // 执行星期一的操作
    }
    when 'Tuesday' {
        // 执行星期二的操作
    }
    when else {
        // 其他情况的操作
    }
}

switch 语句中的 when 部分用于定义不同情况下的执行代码块。

when 后面的表达式会被计算,然后与 switch on 后的值进行比较,如果匹配,相应的代码块将被执行。

when else 用于处理除已定义 when 之外的所有情况。


3.2.2 循环结构 (参考 Loops

循环结构允许你重复执行特定的操作,直到满足条件为止。

3.2.2.1 for 循环

for 循环是一种常用的循环结构,它允许你在特定条件下重复执行一组语句。在 Apex 中,你可以使用以下形式的 for 循环:

for (初始化; 条件; 迭代) {
    // 循环体,执行循环中的操作
}

初始化 部分用于初始化循环控制变量。

条件 部分是一个布尔表达式,如果为 true,循环将继续执行。

迭代 部分用于更新循环控制变量。

示例:

for (Integer i = 0; i < 5; i++) {
    System.debug('循环迭代次数:' + i);
}

3.2.2.2 while 循环

while 循环允许你在条件为 true 时反复执行一组语句。在 Apex 中,你可以使用以下形式的 while 循环:

while (条件) {
    // 循环体,执行循环中的操作
}

条件 是一个布尔表达式,只要为 true,循环将一直执行。

示例:

Integer i = 0;

while (i < 5) {
    System.debug('循环迭代次数:' + i);
    i++;
}

3.2.2.3 do-while 循环

do-while 循环是一种至少会执行一次的循环结构。在 Apex 中,你可以使用以下形式的 do-while 循环:

do {
    // 循环体,执行循环中的操作
} while (条件);

do 部分包含循环体,会在条件被检查之前至少执行一次。

条件 是一个布尔表达式,只要为 true,循环将继续执行。

示例:

Integer i = 0;

do {
    System.debug('循环迭代次数:' + i);
    i++;
} while (i < 5);


3.2.3 使用 break 与 continue

3.2.3.1 break 语句

break 语句是一种控制语句,用于在循环内部终止循环的执行,即使循环条件仍然为 true。在 Apex 中,你可以在循环内部使用 break 语句来跳出循环。以下是示例:

for (Integer i = 0; i < 10; i++) {
    if (i == 5) {
        break; // 当 i 等于 5 时,终止循环
    }
    System.debug('循环迭代次数:' + i);
}

在上述示例中,当 i 的值等于 5 时,break 语句会终止 for 循环的执行,即使循环条件仍然满足。


3.2.3.2 continue 语句

continue 语句用于跳过当前循环迭代中的剩余代码,并继续下一次迭代。在 Apex 中,你可以在循环内部使用 continue 语句来跳过某些迭代。以下是示例:

for (Integer i = 0; i < 10; i++) {
    if (i == 5) {
        continue; // 当 i 等于 5 时,跳过当前迭代
    }
    System.debug('循环迭代次数:' + i);
}

在上述示例中,当 i 的值等于 5 时,continue 语句会跳过当前迭代,然后继续下一次迭代。


break 和 continue 语句是在编写复杂逻辑的循环时非常有用的控制工具,它们允许你在特定条件下控制循环的执行。

关注 收藏