📅  最后修改于: 2023-12-03 14:59:21.244000             🧑  作者: Mango
在 Apex 编程中,循环结构是一种常用技巧,用于反复执行一个或多个语句,直到满足一定的条件为止。Apex 提供了多种循环结构,包括 while 循环、for 循环、do-while 循环等。本文将介绍这些循环及其应用场合。
while 循环是最基本的循环结构,用于在满足指定的条件时,反复执行一组语句。它的语法格式如下:
while (条件) {
待执行的代码块
}
当条件为真时,代码块会被反复执行,直到条件不再为真。以下是一个示例,它利用 while 循环来计算并输出从 1 到 10 的所有偶数:
Integer i = 1;
while (i <= 10) {
if (i % 2 == 0) {
System.debug(i);
}
i++;
}
本示例中,变量 i 从 1 开始,逐次加 1,直到达到 10。在每次迭代中,如果 i 是偶数,则通过 System.debug() 方法输出它的值。在最后一次迭代中,i 的值为 11,不再满足条件,因此循环停止。
for 循环是一种比 while 循环更灵活的循环结构,用于在已知循环次数的情况下执行一组语句。它的语法格式如下:
for (初始化; 条件; 迭代) {
待执行的代码块
}
for 循环包含三个部分:
以下是将上述示例改写为 for 循环的代码:
for (Integer i = 1; i <= 10; i++) {
if (i % 2 == 0) {
System.debug(i);
}
}
本示例中,变量 i 被初始化为 1,每次迭代都会增加 1,直到达到 10。与 while 循环不同,这里没有显式地增加 i 的值。在每次循环中,如果 i 是偶数,则输出它的值。
for 循环还可以用于遍历集合、数组等容器类对象。以下是一个示例,用于遍历一个 String 列表并输出每个元素:
List<String> names = new List<String>{'Alice', 'Bob', 'Charlie'};
for (String name : names) {
System.debug(name);
}
在这个示例中,for 循环的条件部分使用了“增强型 for 循环”语法,即“:”后跟待遍历的列表对象。循环内部的代码块会被反复执行,每次的 name 变量都代表列表中的一个元素。
do-while 循环是一种类似于 while 循环的结构,不同之处在于它至少会执行一次循环体,即使条件一开始就为假。它的语法格式如下:
do {
待执行的代码块
} while (条件);
以下是一个示例,它利用 do-while 循环来不断读取用户输入,直到输入的数字大于等于 0:
Integer input;
do {
input = Integer.valueOf(System.console().readLine('Enter a positive number: '));
} while (input < 0);
System.debug('You entered ' + input);
本示例中,首先声明了一个变量 input,然后进入 do-while 循环。循环体内使用 System.console().readLine() 方法来读取用户输入,并使用 Integer.valueOf() 方法将其转换为整数类型。当输入小于 0 时,循环会继续执行。当输入大于等于 0 时,循环结束,输出“You entered”加上输入的数字。
在 Apex 编程中,循环是一种非常有用的技巧,它可以帮助我们反复执行相似或重复的操作。while 循环是最基本的循环结构,适用于在不知道循环次数的情况下执行一组语句。for 循环则更加灵活,适用于已知循环次数的情况。do-while 循环则是 while 循环的变种,保证至少执行一次循环体。根据不同的需求,我们可以灵活选择适当的循环结构来解决问题。