乐趣区

Flutter必备语言Dart教程01-变量类型函数

Hello World

致敬经典 ‘Hello World’ 程序。

与 Java 类似,每个 Dart 程序都必须有一个 main 作为其入口点。

要运行程序,请将其保存在名为“hello_world.dart”的文件中,并在终端中执行以下命令。(如果没有 dart 环境,请先完成安装。)

定义变量

就像在 JavaScript 中一样,您可以使用 var 关键字来定义变量。

但是!与 JavaScript 不同,在 Dart 2 中,一旦分配了类型,就无法将具有新类型的值重新分配给变量。Dart 会自动从右侧推断数据类型。

您还可以通过显式提供数据类型来定义变量。

如果您不打算更改变量所持有的值,则使用 final 或 const 声明它。

final 和 const 之间的区别在于:

const 变量是编译时常量,即 const 变量在编译期间必须有一个值,例如 const PI = 3.14;

虽然 final 的变量只能分配一次,但它们不需要在编译期间分配,并且可以在运行时分配。也就是说,final 的变量可以先不赋值,稍后在其他地方赋值。

内置数据类型

Dart 提供了您可以从现代语言中获得的所有基本数据类型。

  • Numbers
  • Strings
  • Booleans
  • Lists
  • Maps

Lists

声明一个列表非常简单,使用方括号 [] 可以简单地定义一个列表。以下是列表中的一些常见操作。

如果要定义一个编译时常量的 List,即列表内容不可更改,则使用 const 关键字。

Maps

定义 Map 同样直截了当。使用花括号 {} 来定义 Map。

您还可以使用 Map 构造函数定义 map。

如果要定义编译时常量的 Map,即 map 的内容不可更改,则使用 const 关键字。

函数

Dart 中的函数尽可能简单,有点类似于 javascript。您需要做的就是提供名称,返回类型和参数。

您甚至可以省略返回类型,程序仍然有效。

这是编写单行函数的简便方法。

命名参数

Dart 有一个叫做命名参数的东西,当使用命名参数时,你必须在调用函数时指定参数的名称。要启用命名参数,只需使用大括号 {} 将参数包装在函数中。

如果在使用命名参数调用函数时未提供名称,则程序将崩溃。

默认参数值

您可以为命名参数指定默认值,从而在调用函数时使它们成为可选参数。在下面的示例中,我们为 lastName 指定了一个默认值。

函数是一等公民

在 Dart 中,函数非常灵活,例如,你可以在另一个函数中传递一个函数。对于这一点,JavaScript 开发者应该很熟悉了。

在这里,我定义了一个名为 out 的函数,它接受一个参数:一个函数(具有参数 message)。然后我定义了一个名为 printOutLoud 的函数,它所做的就是以大写形式打印一个字符串。

Dart 也有匿名函数,所以在上面的例子中,我们可以传递一个匿名函数而不是预定义函数(printOutLoud)。

另一个匿名函数的例子。

退出移动版