Flutter学习05:Dart循环语句

张建 lol

自增、自减运算符

  1. 自增 ++
1
2
3
4
5
6
7
// 1. 自增
var a = 10;
a++; // a=a+1
print(a);

=====
11
  1. 自减 –
1
2
3
4
5
6
7
// 2. 自减
var b = 10;
b--;
print(b);

=====
9
  1. 赋值运算符
1
2
3
4
5
6
7
8
9
10
// 3. 赋值运算 ++
var a = 10;
print(a); // 10
var b = a++;
print(a); // 11
print(b); // 10

var c = ++a;
print(a); // 12
print(c); // 12

注:在赋值运算里面
1、如果++ –写在前面 先运算 再赋值
2、如果++ –写在后面 先赋值 再运算

for 循环语句

  • for 循环基本语法
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
/*
for 基本语法
for (int i = 1; i <= 10; i ++) {
print(i);
}
第一步:声明变量int i = 1
第二步:判断 i <= 10
第三步:print(i)
第四步:i++
第五步:从第二步再来,直到判断为false
*/
for (int i = 1; i <= 10; i++) {
print(i);
}
=========
1
2
3
4
5
6
7
8
9
10
  • 求 1+2+3+4+ … + 100 的和
1
2
3
4
5
var sum = 0;
for (var i = 0; i <= 100; i++) {
sum += i;
}
print(sum); // 5050
  • 计算5的阶乘(12345 n的阶乘123*…*n)
1
2
3
4
5
var sum = 1;
for (var i = 1; i <= 5; i++) {
sum *= i;
}
print(sum); // 120
  • 打印List [‘张三’,’李四’,’王五’]
1
2
3
4
5
6
7
8
9
10
List list = ['张三', '李四', '王五'];
print(list); // [张三, 李四, 王五]

for (var i = 0; i < list.length; i++) {
print(list[i]);
}
=====
张三
李四
王五
  • 定义一个二维数组 打印里面的内容
1
2
3
4
5
6
7
8
9
10
11
12
List arr = [
{"title": "首页"},
{"title": "分类"},
{"title": "购物"}
];
for (var i = 0; i < list.length; i++) {
print(arr[i]["title"]);
}
====
首页
分类
购物
  • 定义一个二维数组 打印里面的内容
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
List mArr = [
{
"cate": "国内",
"new": [
{"title": "中国"},
{"title": "美国"},
{"title": "日本"}
]
},
{
"cate": "国际",
"new": [
{"title": "国际新闻1"},
{"title": "国际新闻2"},
{"title": "国际新闻3"}
]
}
];
for (var i = 0; i < mArr.length; i++) {
print(mArr[i]["cate"]);
print("--------------");

for (var j = 0; j < mArr[i]["new"].length; j++) {
print(mArr[i]["new"][j]["title"]);
}
}

=======
国内
--------------
中国
美国
日本
国际
--------------
国际新闻1
国际新闻2
国际新闻3

while 和 do while 循环语句

  • while基本语法
1
2
3
while(表达式/循环条件) {

}
  • do while 基本语法
1
2
3
4
do {
语句/循环体
}while(表达式/循环条件);

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

  • while 循环打印 1~10
1
2
3
4
5
int i = 1;
while (i <= 10) {
print(i);
i++;
}

求1+2+3+4+…+100的和

  • 第一种方式 while 实现
1
2
3
4
5
6
7
8
9
int i = 1;
var sum = 0;
while(i<100) {
sum+=i;
i++;
}
print(sum);
===
4950
  • 第二种方式 do while 实现
1
2
3
4
5
6
7
8
9
int i = 1;
var sum = 0;
do {
sum+=i;
i++;
}while(i < 100);
print(sum);
====
4950

break

  1. break语句功能:
  • 在Switch语句中使流程跳出Switch结构

  • 在循环语句中使流程跳出当前循环,遇到break循环终止,后面代码也不会执行

  1. 强调:
  • 如果在循环中已经执行了break语句,就不会执行循环体中位于break后的语句

  • 在多层循环中,一个break语句只能向外跳出一层

  • break可以用在Switch case 中 也可以用在 for 循环和while循环中

  1. 使用
  • 如果i等于4的话跳过
1
2
3
4
5
6
7
8
9
10
for (var i = 1; i <= 10; i++) {
if (i == 4) {
break; // 跳出循环体
}
print(i);
}
======
1
2
3
  • break只能跳出当前循环体,只能向外跳出一层
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
for (var i = 0; i < 2; i++) {
print("外层---$i");
for (var j = 0; j < 3; j++) {
if (j == 2) {
break;
}
print("里层$j");
}

}
====
外层---0
里层0
里层1
外层---1
里层0
里层1
  • 跳出while循环
1
2
3
4
5
6
7
8
9
10
11
12
var i = 1;
while (i <= 10) {
if (i == 4) {
break;
}
print(i);
i++;
}
====
1
2
3
  • 跳出 Switch case
1
2
3
4
5
6
7
8
9
10
11
12
var sex = "男";
switch (sex) {
case "男":
print("男");
break;
case "女":
print("女");
break;
default:
}
======

continue

  1. continue语句的功能:
  • 只能在循环语句中使用,使本次循环结束,即跳过循环体中下面尚未执行的语句,接着进行

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

  • Post title:Flutter学习05:Dart循环语句
  • Post author:张建
  • Create time:2023-03-31 00:51:45
  • Post link:https://redefine.ohevan.com/2023/03/31/Flutter学习/Flutter学习05:Dart循环语句/
  • Copyright Notice:All articles in this blog are licensed under BY-NC-SA unless stating additionally.