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

Posted 前端知否

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Flutter必备语言Dart教程01 - 变量,类型,函数相关的知识,希望对你有一定的参考价值。

Hello World

致敬经典 'Hello World' 程序。

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

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

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

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

定义变量

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

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

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

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

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


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


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

final 和 const之间的区别在于:

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

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

内置数据类型

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

  • Numbers

  • Strings

  • Booleans

  • Lists

  • Maps


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

Lists

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

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


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


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

Maps

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

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


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


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


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


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

函数

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

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


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


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


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


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

命名参数

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

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

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

默认参数值

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

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

函数是一等公民

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

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

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

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



另一个匿名函数的例子。


以上是关于Flutter必备语言Dart教程01 - 变量,类型,函数的主要内容,如果未能解决你的问题,请参考以下文章

Flutter必备语言Dart教程03 - 类,泛型

低价前景广阔的谷歌-Dart语言初见与Flutter进阶实战课程高级开发人员必备的融合开发技术

Flutter 1-8Flutter教程Dart语言——控制语句

Dart语言特性必备了解!

Flutter入门Dart语言:简单易懂的变量指南

Flutter学习笔记·初识Dart语言