Flutter系统化学习 — Day3 完整详细教程
今日目标
掌握 switch选择语句,适用等值匹配场景吃透三大循环: for、while、do while,分清各自使用场景学会循环控制关键字: break(跳出循环)、continue(跳过本次循环)理解简单循环嵌套逻辑 完成随堂手写练习 + 课后作业 学习时长:3.5小时左右 前置基础:Day1变量、Day2运算符与if判断全部掌握
一、switch 等值分支语句
1.1 语法结构
switch 只适合等值精准匹配(等于某个固定值),没法做区间判断;区间判断依旧使用 if else if
switch(要判断的变量){
case 值1:
执行语句;
break;
case 值2:
执行语句;
break;
default:
所有case都不匹配时执行;
}关键规则
case后面只能写固定值,不能写大于小于这类条件;每一个 case末尾必须加 break,不加会发生穿透,依次执行下面case代码;default相当于if里的else,可写可不写,建议习惯性写上,处理异常情况。
案例:星期判断
void main(){
int week = 3;
switch(week){
case 1:
print("星期一");
break;
case 2:
print("星期二");
break;
case 3:
print("星期三");
break;
case 4:
print("星期四");
break;
case 5:
print("星期五");
break;
case 6:
print("星期六");
break;
case 7:
print("星期日");
break;
default:
print("输入的星期数字错误");
}
}if 和 switch 使用场景区分
if else if:判断范围、区间(年龄、成绩、体温、大小比较) switch:固定等值匹配(星期、选项编号、固定状态码)
二、循环语句(本章核心重点)
循环作用:重复执行一段代码,避免重复粘贴多行相同代码;Dart常用三种循环:for、while、do while
2.1 for 循环(最常用,已知循环次数首选)
完整语法格式
for(初始变量; 循环条件; 变量更新){
循环体代码(重复执行内容)
}执行顺序:
执行初始变量 → 2. 判断条件,true进入循环体 → 3. 执行变量更新 → 回到第二步反复判断;条件为false,循环直接结束。
案例1:打印1~10所有数字
void main(){
// i从1开始;i<=10继续循环;每次循环i自增1
for(int i = 1; i <= 10; i++){
print(i);
}
}案例2:计算 1 ~ 100 累加总和
void main(){
int sum = 0;
for(int i = 1; i <= 100; i++){
sum = sum + i;
}
print("1到100累加总和:$sum");
}2.2 while 循环(不知道循环多少次,只知道结束条件)
语法结构
while(循环条件){
循环执行代码;
条件变更语句;
}规则:先判断条件,条件为true才执行循环体;条件false,循环一次都不运行。
案例:while打印1~5
void main(){
int i = 1;
while(i <= 5){
print(i);
i++; // 必须写自增,否则条件永远成立,死循环
}
}2.3 do while 循环
语法结构
do{
循环代码;
}while(循环条件);特点:先执行一次循环体,再判断条件,无论条件是否成立,代码最少执行一遍。 简单对比:
while:先判断,后执行,可能一次都不执行 do while:先执行,后判断,至少执行一次
三、循环控制关键字 break & continue
3.1 break
作用:立刻终止整个循环,跳出循环,循环直接结束。 案例:循环到数字6,直接停止循环
void main(){
for(int i = 1; i <= 10; i++){
if(i == 6){
break;
}
print(i);
}
}3.2 continue
作用:仅跳过当前这一轮循环,后续循环照常继续执行。 案例:只跳过6,其余数字正常打印
void main(){
for(int i = 1; i <= 10; i++){
if(i == 6){
continue;
}
print(i);
}
}四、循环嵌套
循环里面再包裹一层循环,日常多用于打印行列图形、多层数据遍历 简单格式:
for(外层循环){
for(内层循环){
}
}案例:打印简易5行5列星号
void main(){
// 外层控制行数
for(int row = 1; row <= 5; row++){
// 内层控制一行打印几颗星
for(int col = 1; col <= 5; col++){
print("*");
}
}
}五、Day3 随堂练习(手动敲写,禁止复制)
练习1:使用for循环,倒序打印 10 ~ 1 练习2:while循环计算 2~50之间所有偶数之和 练习3:循环打印1-20,遇到15使用break结束循环
六、Day3 课后独立作业
作业1:switch作业 输入数字1-7,匹配对应星期;输入其他数字,提示“星期输入有误”。
作业2:for循环作业 用循环输出:1~100中,所有能同时整除3和5的数字。
作业3:判断+循环综合题 循环录入分数,当输入 -1 时停止循环;统计一共输入了多少个分数、总分、平均分。
作业4:嵌套循环 使用双层循环,打印出如下直角三角形:
* ** *** **** *****
七、Day3 易错坑点
while循环体内忘记写 i++,会出现死循环,程序卡死;switch的case末尾漏写break,出现case穿透,代码乱执行; for循环三个部分用逗号隔开,必须使用英文分号 ;,不能写中文分号;continue会跳过本轮后续代码,注意print放置的位置,避免打印缺失; 循环嵌套时,内外层循环变量不能都用i命名,容易变量冲突报错。
明日Day4预习内容
List 列表(数组)增删改查 List常用内置方法 Map字典键值对使用 遍历List、Map循环写法
你写完Day3的练习和作业代码之后,可以全部发过来,我帮你逐行批改,纠正写法问题,没问题我再发Day4完整讲义。 有代码爆红、逻辑看不懂的地方,可以直接贴代码+截图提问。
-
用微信 “扫一扫”
将文章分享到朋友圈。
关注公众号:xue-jiqiao
本文版权归原作者所有,转载请注明原文来源出处,学技巧网站制作感谢您的支持!
- 1 Flutter 多端开发新手入门指南(极简路线,从零到可上手)
- 2 Flutter新手入门·第一天完整实操手册Windows+Android Studio
- 3 Flutter 系统化学习 — Day1 完整详细教程
- 4 Flutter系统化学习 — Day2 完整详细教程
- 5 2 个可直接复制运行的入门示例,基于最新 Flutter + Dart 空安全,包含注释,跟着练就能上手
- 6 AI 能否辅助 Flutter 安卓/ios开发
- 7 零基础(仅会 HTML)Flutter + Android Studio 完整入门路线(Windows 环境,循序渐进详细方案)
- 8 Flutter 系统化全天学习排课计划(总周期:42天,网页HTML转行适配版)【一】
- 9 Flutter系统化学习 — Day3 完整详细教程



