专注前端,专注网页设计分享 - (网页制作/模板制作/设计)755150799 织梦模板 | 网页特效 | 网站模板 | 建站教程 | Tag标签 | 联系站长
当前位置:首页 > APP开发

Flutter系统化学习 — Day2 完整详细教程

时间:2026-06-10 17:08:41来源:学技巧网站制作 作者:新建 阅读:0次 【 点评一下

今日目标

  1. 掌握 Dart 所有算术运算符、赋值运算符、关系运算符
  2. 吃透 if / else if / else 条件判断语法
  3. 掌握 三目运算符(开发高频简写语法)
  4. 学会基础逻辑判断,能完成数值判断、条件筛选案例
  5. 独立完成随堂练习 + 课后作业 学习时长:3小时左右 前置基础:熟练掌握 Day1 变量、五大基础数据类型、字符串插值

一、知识前置说明

本节课所有代码,继续在昨天的 dart_learn_day1 项目 bin/main.dart 文件中编写 可以注释/删除昨天旧代码,全程手写练习,禁止直接复制! Dart 逻辑语法和 JS/Java 高度通用,学会可直接复用。

二、Dart 常用运算符(核心必背)

2.1 算术运算符(数学计算)

用于数字加减乘除运算,仅支持 int、double 类型

image

重点难点:自增自减

  1. 后置自增 a++:先使用原值运算,运算结束后再+1
  2. 前置自增 ++a:先自身+1,再参与运算

演示代码(手动敲写)

void main() {
  int a = 5;
  print(a++); // 输出5,先输出再自增
  print(a);   // 输出6

  int b = 5;
  print(++b); // 输出6,先自增再输出
  print(b);   // 输出6
}

2.2 赋值运算符

用于给变量赋值、快捷更新变量数值

运算符作用等价写法
=基础赋值a = 10
+=加后赋值a = a + 5
-=减后赋值a = a - 5
*=乘后赋值a = a * 5
/=除后赋值a = a / 5
%=取余后赋值a = a % 5

示例代码

void main() {
  int num = 10;
  num += 5; 
  print(num); // 15

  num -= 3;
  print(num); // 12
}

2.3 关系运算符(返回结果永远是布尔值 true/false)

用于条件判断、数值比较,是if判断的核心

运算符含义
>大于
>=大于等于
==相等(两个等于号!!单个=是赋值)
!=不相等

核心易错点: 判断相等必须写 ==绝对不能写单个=`,单个=是赋值操作,会直接报错!

示例代码

void main() {
  int age = 18;
  print(age > 16);  // true
  print(age == 18); // true
  print(age != 20); // true
  print(age< 18);  // false
}

2.4 逻辑运算符(多条件组合)

开发中高频用于多个条件同时判断

运算符含义规则
&&逻辑与(并且)所有条件都满足,才为true
||逻辑或(或者)任意一个条件满足,就为true
!逻辑非(取反)true变false,false变true

通俗记忆

  • &&:全真才真,一假则假
  • ||:一真则真,全假才假

示例代码

void main() {
  int age = 20;
  // 条件:年龄大于18 并且 小于30
  bool res1 = age > 18 && age < 30;
  print(res1); // true

  // 条件:年龄小于18 或者 大于50
  bool res2 = age < 18 || age > 50;
  print(res2); // false

  print(!res2); // 取反 true
}

三、Dart 条件判断 if / else(重中之重)

3.1 基础if语句(满足条件才执行)

语法结构

if(条件判断){
  // 条件为true时,执行这里的代码
}

3.2 if...else 双分支判断(二选一执行)

语法结构

if(条件){
  // 条件成立执行
}else{
  // 条件不成立执行
}

3.3 if...else if...else 多分支判断(多选一)

适合多区间判断、多状态判断(成绩分级、年龄分级、权限判断)

  语法结构

if(条件1){
  // 满足条件1执行
}else if(条件2){
  // 满足条件2执行
}else if(条件3){
  // 满足条件3执行
}else{
  // 以上条件都不满足执行
}

实战案例1:年龄判断(成年/未成年)

void main() {
  int age = 20;
  if (age >= 18) {
    print("成年人,可以上网、考驾照");
  } else {
    print("未成年人,禁止上网");
  }
}

实战案例2:学生成绩等级判定

需求:90及以上优秀、80-89良好、60-79及格、60以下不及格

void main() {
  double score = 88.5;
  if (score >= 90) {
    print("成绩优秀");
  } else if (score >= 80) {
    print("成绩良好");
  } else if (score >= 60) {
    print("成绩及格");
  } else {
    print("成绩不及格");
  }
}

四、三目运算符(if简写,开发必用)

作用:简化简单的二元判断代码,替代简短的if else,代码更简洁 

固定语法

条件 ? 条件成立执行 : 条件不成立执行;

通俗理解:条件为真取前面值,条件为假取后面值

实战案例:成年判断简写

void main() {
  int age = 17;
  String res = age >= 18 ? "已成年" : "未成年";
  print(res);
}

五、Day2 随堂练习(必手写,不复制)

练习1:奇偶数字判断

需求:输入一个整数,判断是奇数还是偶数,打印结果 提示:能被2整除(num % 2 == 0)为偶数,否则奇数

参考结构(自己补全代码)

void main() {
  int num = 23;
  if(){
    print("偶数");
  }else{
    print("奇数");
  }
}


练习2:三目运算符实现余额判断

需求:定义钱包余额变量,余额大于100打印「余额充足」,否则打印「余额不足」

六、Day2 课后作业(独立完成,可发我批改)

作业1:性别权限判断

定义变量:性别、年龄 规则:年龄≥18 且 性别为男,打印「可进入男士专区」,否则打印「无访问权限」

作业2:体温健康判断

定义体温变量(double类型)

  • 体温<36℃:体温偏低
  • 36℃~37.2℃:体温正常
  • 37.3℃~38℃:低烧
  • >38℃:高烧

作业3:三目运算符实战

定义两个数字a、b,使用三目运算符取出两个数中的最大值并打印

七、Day2 新手高频易错坑点

  1. 判断相等必须双等号 ==,单等号=是赋值,直接报错
  2. if 括号后不要加分号 if(){} ✅ / if();{} ❌ 加分号会导致判断失效
  3. 逻辑运算符 && || 不要写错,不能用单个&、|
  4. 代码缩进统一,大括号成对出现,不能缺漏
  5. 区间判断不能连写:18<30(JS/Dart错误写法),必须写 age><30

明日预习 Day3 内容

  1. Dart switch 多分支匹配
  2. for 循环基础(重中之重,开发核心)
  3. while / do while 循环
  4. 循环嵌套、break/continue 终止语句

学习建议: Day2 是 Dart 逻辑基础,所有移动端业务逻辑(判断、权限、状态切换)都基于此,务必手写所有案例+作业,不要眼高手低!写完代码可发给我,免费批改纠错、规范代码风格。需要我帮你补充Day2所有作业的标准参考答案,方便你写完对照自查吗?



  • 用微信  “扫一扫”

    将文章分享到朋友圈。

    关注公众号:xue-jiqiao

本文版权归原作者所有,转载请注明原文来源出处,学技巧网站制作感谢您的支持!