【Flutter 开发实战】Dart 基础篇:最基本的语法内容

在这里插入图片描述

在深入了解 Dart 这门编程语言之前,我们需要了解一些关于 Dart 的最基本的知识,像是常量、变量、函数等等,这样才能够让我们的开发效率更上一层楼。在本节,我们将探讨一些基础语法,包括入口方法 main、变量、常量以及命名规则。让我们一起揭开 Dart 的神秘面纱,为你带来更深层次的了解。

探寻 Dart 的大门:main 方法

在 Dart 中,所有程序的执行都始于 main 方法。这是程序的入口点,是代码开始执行的地方。不少初学者学习代码都会从 main 方法开始阅读,从而整理出整个工程项目的整体脉络。让我们看一个简单的 main 方法:

void main() {print("Hello, Dart!");
}

这是不少小伙伴初学编程时都会编写简单案例,在这个例子中,main 方法是程序的起点,print 函数用于在控制台输出文本,当你按下运行,就会在控制台内看到 Hello, Dart! 这段话。Dart 的语法简洁,让你能够迅速理解和编写代码。

变量:存储世界的记忆

在 Dart 中,变量用于存储数据。使用 var 关键字可以声明一个变量,而 Dart 会自动推断其类型。例如:

void main() {var message = "Hello, Dart!";print(message);
}

在这里,我们创建了一个名为 message 的变量,用于存储字符串;当我们点击运行后,就会把 message 中的存储的内容输出出来。Dart 的类型推断让我们无需明确指定变量类型,使得代码更加简洁。

常量:不变的世界

与变量不同,常量在 Dart 中是不可变的。通常使用 finalconst 关键字可以声明常量。const 表示编译时常量,其值在一开始就必须被赋值,而 final 在声明时可以不赋初始值,但只能在运行时被赋值一次。与 const 不同的是,final 是运行时常量,而且它具有惰性初始化的特性,即在运行时首次使用前才进行初始化。

void main() {final int hoursInDay = 24;const double gravity = 9.8;print("A day has $hoursInDay hours, and gravity is $gravity m/s².");
}

这里,我们创建了一个表示一天小时数的 final 常量和表示地球重力的 const 常量。常量的使用有助于提高代码的可读性和性能。

命名规则:为变量取名的注意事项

在 Dart 中,变量以及常量的命名需要注意一些常见的问题,否则会引起一些不必要的错误。以下是一些变量命名时的“能”与“不能”:

  • 变量名称要由数字、字母、下划线和美元符($)组成,比如 myVariable, user123, totalAmount, _internalVar, $price
  • 标识符开头不能是数字,123variable, 7daysOfWeek 这些都是错误的示范。
  • 标识符不能是保留字和关键字,class, if, import, void 这些都是关键字与保留字中存在的,不能够当作变量名使用。
  • 变量的名字是区分大小写的。ageAge 是两种不同的变量,注意区分。

下面是 Dart 中的一些保留字与关键字:

保留字:

abstractascovariantdeferreddynamic
exportexternalfactoryFunctionget
implementsimportinterfacelatemixin
onsetstaticsynctypedef

关键字:

assertbreakcasecatchclass
constcontinuedefaultdoelse
enumextendsfalsefinalfinally
forifinisnew
nullrethrowreturnsuperswitch
thisthrowtruetryvar
voidwhilewithyield

良好的命名规则是写出清晰、易懂代码的关键,下面也有一些常用的命名规范建议大家使用:

  • 变量和函数名应使用驼峰命名法,例如 myVariablecalculateTotal.
  • 类名应该使用帕斯卡命名法,例如 MyClass.
  • 避免使用缩写,除非是广为人知的缩写。
void main() {String favoriteColor = "Blue";int numberOfApples = 10;print("My favorite color is $favoriteColor, and I have $numberOfApples apples.");
}

上述代码中,我们就使用了驼峰命名法为变量取了清晰易懂的名字,使得代码更加可读。


在探索 Dart 的世界前,先搞懂 main 方法是大门;变量是记忆的存储,var 让你轻松;常量是不变的宇宙,finalconst 不一样聪明;命名规则像给变量取名字的诗歌,见名思意别太迷。在 Dart 的舞台,简单、有趣、清晰才是主角!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/605982.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【数位dp】【动态规划】C++算法:233.数字 1 的个数

作者推荐 【动态规划】C算法312 戳气球 本文涉及的基础知识点 动态规划 数位dp LeetCode:233数字 1 的个数 给定一个整数 n,计算所有小于等于 n 的非负整数中数字 1 出现的个数。 示例 1: 输入:n 13 输出:6 示例 2&#xff…

MySQL 8.0中新增的功能(七)

EXPLAIN ANALYZE 语句 在MySQL 8.0.18中引入了一种新形式的EXPLAIN语句,即EXPLAIN ANALYZE,它提供了关于SELECT语句执行的扩展信息,以TREE格式显示查询过程中每个迭代器的执行计划,并可以比较查询的预计成本与实际成本。这些信息…

类和对象的定义以及使用

文章目录 1. 类和对象的基本概念1.1 JAVA是面向对象语言1.2 类和对象的描述 2. 类与对象的定义与使用2.1 类的定义格式2.2 类的实例化(对象的创建)2.3 举个例子 3. 对象的构造及初始化3.1构造方法3.1.1构造方法的定义3.1.2 构造方法的特性 4.2 默认初始化5.4 就地初始化 4.this…

微信群机器人:科技与社交的完美结合

在当今这个数字化时代,微信已经成为人们生活中不可或缺的社交工具。而在微信群组中,机器人作为一种新型的互动方式,正逐渐受到人们的青睐。微信群机器人不仅为群组带来了便利,还为群组成员之间的交流增添了趣味性。本文将探讨微信…

C语言实现特殊数列前n项之和

在本篇博客中,我们将深入剖析一段C语言程序,该程序用于计算一个特定结构数列的前n项之和。这个数列的每一项都由同一数字a重复拼接而成,随着项数的增加,该数字会按照十进制位向左延展。例如,如果给定数字a 2&#xff…

二叉树题目:好叶子结点对的数量

文章目录 题目标题和出处难度题目描述要求示例数据范围 解法思路和算法代码复杂度分析 题目 标题和出处 标题:好叶子结点对的数量 出处:1530. 好叶子结点对的数量 难度 6 级 题目描述 要求 给定二叉树的根结点 root \texttt{root} root 和整数 …

【Python学习】Python学习5-条件语句

目录 【Python学习】Python学习5-条件语句 前言if语句if语句判断条件简单的语句组参考 文章所属专区 Python学习 前言 本章节主要说明Python的条件语句,Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。 …

记一个集群环境部署不完整导致的BUG

一 背景 产品有三个环境:开发测试环境、验收环境、生产环境。 开发测试环境,保持最新的更新; 验收环境,阶段待发布内容; 生产环境,部署稳定内容。 产品为BS架构,后端采用微服务&#xf…

我们找项目外包要注意些什么?

当我们要做一个项目的时候,往往采用外包或自研的方式。外包,就是把项目交出去给外面的人去做。一般分为项目外包和人力外包。人力外包很简单,就是个人充当类似员工的角色,为你开展服务,这种模式一般按时间或者项目付费…

如何查看崩溃日志

目录 描述 思路 查看ipa包崩溃日志 简单查看手机崩溃信息几种方式 方式1:手机设置查看崩溃日志 方式2: Xocde工具 方式3: 第三方软件克魔助手 环境配置 实时日志 奔溃日志分析 方式四:控制台资源库 线上崩溃日志 线上监听crash的几种方式 方式1: 三方平…

[pkg-config] 第三方软件包/库管理工具 pkg-config

参考: 【Linux 库管理工具】深入解析pkg-config与CMake的集成与应用 - 知乎 正文: 构建工程时,多会依赖于第三方库,这些库在安装到系统中后都会创建一个 .pc 后缀的说明文件,里面包含了库的基本信息,比如…

如何启用Windows电脑的内置Administrator账户

前言 不知道从什么时候开始,新电脑或者新系统开机之后都会出现一个界面让你创建一个账户,但这个账户有可能是本地账户(Windows10)还有强制你登录微软账户的(Windows11)。 好像曾经熟悉的电脑Administrator…

Taro +vue3 中 实现 选择城市页面 主要逻辑市 选择了某个城市返回之前的页面

1.需求 当我选中了某个城市 这个页面肯定 从某个页面跳转过来的 此时我先选择了城市 再跳转回去 所以有一个问题就是如何写这个逻辑 2.实现 //当前城市页面 onMounted(() > {const instance: any Taro.getCurrentInstance();if (instance.router.params.url) {sourceUr…

Uncaught (in promise) ReferenceError: require is not defined

在 Vue3 中加载项目路径下的资源图片,起初按照之前 vue 的写法 require 但浏览器却抛出了异常 Uncaught (in promise) ReferenceError: require is not defined 因为 require 采用的 webpack 加载方式,而 vue3 中通过 vite 的方式,两者存在差异,所以才产生了刚开始的一目; vu…

C++中的虚函数

前言 本篇文章讲述C的虚函数 定义 在C语言中,基类将类型相关的函数和派生类不做改变直接继承的函数区分开来。对于有些函数,基类希望派生类各自定义适合自身的版本。那么基类就会将这些函数标记为virtual,这些被标记的函数就是虚函数。 下…

路由的安装顺序

安装前端路由的顺序通常如下: 安装前端框架:选择并安装适合你的项目的前端框架,如React、Vue或Angular等。 创建路由配置文件:在项目根目录下创建一个路由配置文件,比如router.js或routes.js等,用于定义路…

亚马逊国际商品详情 API:获取特定商品详细信息的实践

随着电子商务的飞速发展,亚马逊作为全球最大的在线零售商之一,提供了丰富的商品详情 API,使得第三方开发者能够轻松地获取亚马逊网站上的商品信息。本文将介绍如何使用亚马逊国际商品详情 API(Amazon Product Advertising API&…

2024年如何使用WordPress构建克隆Udemy市场

您想创建像 Udemy 这样的学习管理 (LMS) 网站吗?最好的学习管理系统工具LifterLMS将帮助您制作像Udemy市场这样的 LMS 网站。 目录 Udemy市场是什么? 创建 Udemy 克隆所需的几项强制性技术: 步骤 1) 注册您的域名 步骤 2) 获取虚拟主…

springboot git配置文件自动刷新失败问题排查

http://{ip}:{port}/refresh 说明:springBoot版本是1.5.9,接口路径与2.x,不同 路径区别:/refresh VS /actuator/refresh 用postman调用refresh接口刷新git配置,报错如下,没有权限 在服务本地启动&#…

微信私密朋友圈被吐槽有BUG

日前,大量网友在各社交媒体上讨论微信私密朋友圈出现 Bug 的话题,起因是跨年期间一个网友发布了一条”私密朋友圈,但不一会就收到朋友发来的信息,”又偷偷发朋友圈了?“,估计此时网友可能已经”寒毛四起、汗…