Dart流程语句控制程序执行的流程,根据条件决定执行的代码,或重复执行特定代码块,常用语句有if、else、for、while等。
1 if语句
main() {
  // if...else...语句
  String today = '星期一';
  if(today == '星期一') {
    print('今天星期一');
  } else {
    print('美好的一天');
  }
}
2 switch
main() {
  // switch...case语句
  String today = '星期一';
  switch(today) {
    case '星期一':
      print('今天星期一');
      break;
    default:
      print('美好的一天');
      break;
  }
}
3 for和while
- 第一次循环条件不成立的情况,while循环不执行,do…while循环执行一次。
 
main() {
  // for循环
  for(int x=1; x<=3; x++) {
    print('for循环:$x');
  }
  // while循环
  int y = 1;
  while(y <= 3) {
    print('while循环:$y');
    y++;
  }
  // do...while循环
  int z = 1;
  int sum = 0;
  do {
    sum += z;
    z++;
  } while(z <= 3);
  print('do...while循环的和:$sum');
}
4 跳出一层循环
- break用于跳出循环,如果有多层循环,则只能跳出一层循环。
 
main() {
  // break跳出循环
  for(var i=1; i<=5; i++) {
    if(i == 4) {
      break;
    }
    print(i);
  }
}
5 跳出本次循环
- continue用来跳出本次循环。
 
main() {
  // continue跳出本次循环
  for(var i=1; i<=3; i++) {
    if(i == 2) {
      continue;
    }
    print(i);
  }
}
6 其他循环语句
- any(只要集合中有满足条件的数据就返回true)、map (修改集合中的数据)。
 - every(集合中的每一个数据都必须满足条件才返回true,否则将返回false)。
 - where(返回满足条件的数据)、forEach(循环遍历List)。
 
6-1 any
main() {
  // any
  List mylist = [1, 3, 5, 7, 9];
  var anyList = mylist.any((value) {
    return value >= 5;
  });
  print(anyList);
}
6-2 map
main() {
  // map
  List mylist = [1, 2, 3];
  var doubleList = mylist.map((value) {
    return value * 2;
  });
  print(doubleList.toList());
}
6-3 every
main() {
  // every
  List mylist = [1, 3, 5, 7, 9];
  var everyList = mylist.every((value) {
    return value >= 5;
  });
  print(everyList);
  // 循环方法同样适用于set
  var s = new Set();
  s.addAll([11111, 22222, 33333]);
  s.forEach((value) => print(value));
  // 循环方法同样适用于map
  var person = {'姓名': '张三', '工作': '测试'};
  person.forEach((key, value) {
    print('$key --- $value');
  });
}
6-4 where
main() {
  // where
  List mylist = [1, 3, 5, 7, 9];
  var newList = mylist.where((value) {
    return value >= 5;
  });
  print(newList.toList());
}
6-5 forEach
main() {
  List mylist = ['樱桃', '西瓜', '香蕉'];
  for(var i=0; i<mylist.length; i++) {
    print('方法一:${mylist[i]}');
  }
  for(var item in mylist) {
    print('方法二:$item');
  }
  
  // forEach
  mylist.forEach((value) {
    print('forEach:$value');
  });
}