Dart 语言学习 03 分支结构和循环结构

Dart 语言学习 03

Author : ScorpioDong

1. 分支结构

1.1 if - else

// if 语句
if (1 * 3 == 3) {
    print(true);
}
// if - else 语句
if (2 * 4 == 8) {
    print(true);
} else {
    print(false);
}

// if - else if 语句
if (5 > 7) {
    print("5 > 7");
} else if (5 > 4) {
    print("5 > 4");
} else {
    print("5 < 4");
}
  • if 语句: 由一个布尔表达式后跟一个或多个语句组成。
  • if - else 语句: if后面跟一个可选的else块。如果if块测试的布尔表达式求值为false,则执行else块。
  • if - else if 语句: else…if可用于测试多个条件。

1.2 switch - case

int a = 4;
switch (a) {
case 1:
    print("1");
    break;
    case 2:
    print("2");
    break;
    case 3:
    print("3");
    break;
    case 4:
    print("4");
    break;
default:
print("others");
}
  • 支持整数字符串,或者编译时常量
  • switch中可以有任意数量的case语句。
  • case语句只能包含常量,它不能是变量或表达式。
  • 变量和常量表达式的数据类型必须匹配。
  • 除非你在每个代码块之后放置break语句,否则执行会流入下一个break块。
  • case表达式必须是唯一的。
  • default块是可选的。

2. 循环结构

2.1 for循环

for (var i = 0; i < 5; i++) {
    print("Hello Dart");
}

执行结果

Hello Dart
Hello Dart
Hello Dart
Hello Dart
Hello Dart

for循环格式 :

for (循环变量初始化; 循环条件; 每一次循环后需要执行的语句) {
    循环体
}

一般每一次循环后需要执行的语句是循环条件变更语句

for…in…
var str = ["ab","cd","ef","g"];
for (var s in str) {
    print(s);
}

执行结果

ab
cd
ef
g
  • for…in… 结构可以遍历列表,集合等对象。
  • 只有实现了Iterable接口的对象才可以使用for…in…结构。
  • 该结构没有下标操作,所以一些需要下标操作的情况不能使用。

2.2 while 循环和 do - while 循环

int i = 5;
while (i >= 0) {
    print(i);
    i--;
}

执行结果:

5
4
3
2
1
0
  • while循环会判断循环条件是否成立,成立则执行循环体,不成立则不执行循环体,继续循环结构下面的语句。
  • 每一次正确执行循环体后的下一次循环开始,都会再次判断循环条件是否成立。
  • 要注意循环条件是否可以为false,循环是否能够退出。
int i = 5;
do {
    print(i);
    i--;
} while (i >= 0);

执行结果:

5
4
3
2
1
0
  • do - while 和 while 的区别是,do - while 必定会执行一次循环体,而while则可能一次都不执行。

2.3 循环控制语句

  • continue : 立刻结束本次循环,开始下一次循环。
  • break : 立刻退出循环。嵌套循环,只退出一层循环。
  • return :在方法中调用,立刻结束方法的执行,并且返回return关键字后面的表达式结果。
发布了42 篇原创文章 · 获赞 34 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/m0_37771142/article/details/104827331