2023-01-29 06:34:44
Dart 提供了多种循环语句(for、while、do...while)以及控制流程的关键字(break、continue),以下是详细说明和示例:
1. 循环语句(1) for 循环语法:
for (初始化; 条件; 增量) { // 循环体}特点:
示例:
// 输出1-100for (int i = 1; i <= 100; i++) { print(i);}// 遍历列表List<String> names = ['孙悟空', '猪八戒'];for (int i = 0; i < names.length; i++) { print(names[i]);}// 嵌套循环(遍历二维数组)List<Map<String, dynamic>> listArr3 = [ { "name": '孙悟空1', "nickname": [ {"title": "齐天大圣1"}, {"title": "弼马温1"} ] }];for (int i = 0; i < listArr3.length; i++) { print(listArr3[i]["name"]); for (int j = 0; j < listArr3[i]["nickname"].length; j++) { print(listArr3[i]["nickname"][j]["title"]); }}(2) while 循环语法:
while (条件) { // 循环体}特点:
示例:
// 输出1-10int num = 1;while (num <= 10) { print(num); num++;}// 求和1-100int sum = 0, i = 1;while (i <= 100) { sum += i; i++;}print(sum); // 5050(3) do...while 循环语法:
do { // 循环体} while (条件); // 注意分号特点:
示例:
int sum = 0, i = 1;do { sum += i; i++;} while (i <= 100);print(sum); // 50502. 流程控制关键字(1) break功能:
示例:
// 遇到i==4时终止循环for (int i = 0; i <= 10; i++) { if (i == 4) break; print(i); // 输出0 1 2 3}(2) continue功能:
示例:
// 跳过i==4的迭代for (int i = 0; i <= 10; i++) { if (i == 4) continue; print(i); // 输出0 1 2 3 5 6 7 8 9 10}3. 自增/自减运算符(++/--)示例:
int a = 10;int b = a++; // b=10, a=11int c = ++a; // c=12, a=12关键注意事项break:完全退出循环。
continue:仅跳过当前迭代。
通过合理选择循环类型和控制关键字,可以高效处理重复任务或条件性中断逻辑。