Dart-循环语句

1,014 阅读3分钟

for循环以及循环遍历list

for (int i = 1; i<=100; i++) {   
  print(i);
  // 第一步,声明变量int i = 1;
  // 第二步,判断i <=100
  // 第三步,print(i);
  // 第四步,i++
  // 第五步 从第二步再来,直到判断为false
}
打印0-50所有偶数
for(int i=0;i<=50;i++){
  if(i%2==0){
    print(i);
  }
}
求1+2+3+4+...+100的和
var sum = 0;
for(var i=1;i<=100;i++){
  sum+=i;
}
print(sum);
/*
  sum=0+1;
  sum=0+1+2;
  sum=0+1+2+3+...+100;
*/
计算5的阶乘
var sum = 1;
for(var i=1;i<=5;i++){
  sum*=i;
}
print(sum);
/*
  sum = 1*1;
  sum = 1*1*2;
  sum = 1*1*3;
  sum = 1*1*3*4*5;
*/
打印List['张三','李四','王五']里面的内容
List list = ['张三','李四','王五'];
print(list[1]);
for(var i=0;i<list.length;i++){
  print(list[i]);
}
打印List
List list = [
  {
  "title":"新闻111"
  },
  {
  "title":"新闻222"
  },
  {
  "title":"新闻333"
  }];
  
print(list[1]);

for(var i=0;i<list.length;i++){
  print(list[i]['title']);
}
定义一个二维数组,打印里面的内容
List list = [          {              "cate":'国内',              "news":[                {"title":"国内新闻1"},                {"title":"国内新闻2"},                {"title":"国内新闻3"}              ]
          },
          {
              "cate":'国际',
              "news":[
                {"title":"国际新闻1"},
                {"title":"国际新闻2"},
                {"title":"国际新闻3"}
              ]
          }
        ];

        /*
        国内
            国内新闻1
            国内新闻2
            国内新闻3
        国际
            国际新闻1
            国际新闻2
        */


        for(var i=0;i<list.length;i++){
            print(list[i]["cate"]);
            print('-------------');
            for(var j=0;j<list[i]["news"].length;j++){
                print(list[i]["news"][j]["title"]);
            }
        }

while、do white

语法格式:
while(表达式/循环条件){			

}

do{
    语句/循环体
}while(表达式/循环条件);

注意: 1、最后的分号不要忘记;
            2、循环条件中使用的变量需要经过初始化;
            3、循环体中,应有结束循环的条件,否则会造成死循环。
            

int i = 1;
while(i <= 10){
    print(i);
}
// 死循环
 
int i = 1;
while(i <= 10){
    print(i);
    i++;
}
    
求1+2+3+4+...+100的和
int i = 1;
var sum = 0;
while(i <= 100){
    sum+=i;
    i++;
}
print(sum);

int i = 1;
var sum = 0;
do{
    sum += i;
    i++;
}while(i <= 100);
print(sum);

// while 和 do while的区别:第一次循环条件不成立的情况下
int i = 10;
while(i<2){
    print('执行代码');
}

var j = 10;	  
do{
    print('执行代码');
}while(j<2);

break和continue

break语句功能:

  1. 在switch语句中使流程跳出switch结构;
  2. 在循环语句中使流程跳出当前循环,遇到break循环终止,后面代码也不会执行。

强调:

  1. 如果在循环中已经执行了break语句,就不会执行循环体中位于break后的语句;
  2. 在多层循环中,一个break语句只能向外跳出一层。
  3. break可以用在switch case中 也可以用在 for 循环和 while循环中

continue语句的功能:

【注】只能在循环语句中使用,使本次循环结束,即跳过循环体重下面尚未执行的语句,接着进行下次的是否执行循环的判断。

continue可以用在for循环以及while循环中,但是不建议用在while循环中,不小心容易死循环。

for(var i=1;i<=10;i++){
    print(i);
}

// 1.如果i等于4的话跳过本次循环执行下次循环
for(var i=1;i<=10;i++){
    if(i==4){
        continue;  /*跳过当前循环体 然后循环还会继续执行*/
    }
    print(i);
}
  
// 2.如果i等于4的话跳出循环体
for(var i=1;i<=10;i++){
    if(i==4){
    break;  /*跳出循环体*/
    }
    print(i);
}
      
// 3.break语句只能向外跳出一层
for(var i=0;i<5;i++){	 	
    print('外层---$i');
    for(var j=0;j<3;j++){	
        if(j==1){
        break;
        }
        print('里层$j');		 	
    }	
}

// 4.while循环中使用break跳出循环
var i = 1;
while(i <= 10){
    if(i==4){
        break;
    }
    print(i);
    i++;
}

var sex = "男";
switch (sex) {
    case "男":
        print('男');
    break;
    case "女":
        print('男');
    break;
    default:
}