• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

前端学习Dart|第二节

武飞扬头像
夜还不够黑丶
帮助3

前言

本节接着第一节讲解:循环、条件判断语句。

视频讲解地址:传送门

循环

Dart中循环分两种

  • 确定循环 - for / forIn
  • 不确定循环 - while / doWhile

指迭代次数是确定/固定的循环称为确定循环。

当循环中的迭代次数不确定或未知时成为不确定循环。

for循环

我们先来看一个例子:

学新通

输出:

学新通

循环10次,输出0 - 9。与javascript的理解是相同的。

从语法角度来讲,for循环的语法分为三个部分:

学新通

  • initial_count_value - 初始化部分
  • termination-condition - 所述条件部分
  • step - 最终表达式部分

forIn循环

for ... in循环用于循环对象的属性。

先来看一个例子:

学新通

输出:

学新通

这里需要注意obj在javascript中是数组Array类型,但是在Dart中为List对象类型,所以在概念中forIn循环方法解释为循环对象的属性方法。

再次强调一下Dart中万物皆对象的概念。

从语法角度来讲:

学新通

  • variablename - 解析变量名称
  • object - 循环对象

在每次迭代中,来自对象的一个属性被分配给变量名称,并且此循环继续,直到对象的所有属性都用完为止。

while循环

while 循环执行指令指定的每个条件计算为真时。换句话说,循环在执行代码块之前评估条件。

先来看一个例子:

学新通

输出:

学新通

语法:

学新通

根据expression表达式判断是否达成条件。

while后面的exporession表达式只接受Boolean类型

学新通

doWhile循环

do ... while循环类似于while循环,只是do ... while循环不会在第一次循环执行时评估条件。但是,将对后续迭代评估条件。换句话说,代码块将在do ... while循环中至少执行一次。

看一个例子:

学新通

输出:

学新通

语法上与while循环一致,唯一区别为是否至少执行一次。

break

该 break 语句用来作为控制了结构的。在循环中使用 break 会导致程序退出循环。

看一个例子:

学新通

输出:

学新通

break为直接退出循环,所以print输出0, 1后面的循环体是不执行的。

四种循环方式均支持break;

continue

在 continue 语句跳过当前迭代的后续语句,并采取控制回到循环的开始。与 break 语句不同, continue 语句不会退出循环。它终止当前迭代并开始后续迭代。

看一个例子:

学新通

输出:

学新通

如果执行到continue语句,后方的代码是不回执行的。可以理解为跳出当前循环体,并开始下次循环。

条件判断语句

if ...else

if ... else 语句在执行的代码块之前判断条件。

语法结构如下:

学新通

if后面的表达式必须为Boolean类型。如果布尔表达式的计算结果为 true ,则将执行if语句中的代码块。如果布尔表达式的计算结果为 false ,则将执行if语句结束后(在结束大括号之后)的第一组代码。

看一个例子:

学新通

输出:a is bigger

这里提及一下if的使用场景,if使用场景为:

当前上下文包含默认行为

如果没有默认行为使用switch更加合适。

使用if ...else需要注意以下几点

  • 一个 if 可以有零或一个 else ,它必须在任何 else…if 之后。
  • 一个 if 可以有0到多个 else…if ,他们必须在 else 之前。
  • 一旦 else…if 成功,剩下的 else…if 或 else 将被跳过。

switch

switch语句计算表达式,将表达式的值与case子句匹配,并执行与该case相关的语句。

switch语法如下:

学新通

看一个例子:

学新通

输出:success

variable_expression 的值。如果变量与其中一种情况匹配,则执行相应的代码块。如果case表达式与variable_expression的值不匹配,则默认块中的代码将关联。

以下规则适用于switch语句

  • switch中可以有任意数量的case语句。
  • case语句只能包含常量。它不能是变量或表达式。
  • variable_expression和常量表达式的数据类型必须匹配。
  • 除非你在每个代码块之后放置一个中断,否则执行会流入下一个块。
  • case表达式必须是唯一的。
  • 默认块是可选的。

这里需要注意,上方提及的所有常量表达式为上节文章所讲解的final与const类型。

END

第二节内容: 循环、条件语句。基本语法与javascript一致,依然是没有隐式类型转换的表达式,只需注意这点即可。

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanheggbeb
系列文章
更多 icon
同类精品
更多 icon
继续加载