//入口方法
main() 或 void main()
//数据类型
- 原生数据类型
String int double bool null
注意:String 包函 '' "" ''' ''' 三种形式 - 复杂数据类型
list Set Map - 自定义数据类型
class inheritance - 动态数据类型
var
注:dart 是静态类型语言,但同时也是动态语言
//运算符
算术运算符:+, -, *, /, %
关系运算符:==, !=, >, <, >=, <=
逻辑运算符:&&, ||, !
条件运算符(三元运算符):condition ? expr1 : expr2
赋值运算符:=, +=, -=, *=, /=, %=, ??=
位运算符:&, |, ^, ~, >>, <<, >>>
//类型转换
1.使用as关键字进行类型转换
ex: String str = obj as String;
2.使用is操作符检查类型,然后进行转换
ex: obj is String
3.使用dynamic类型进行无检查的类型转换
ex: dynamic value = 'This is a string';
String str = value;
//循环语句
- for循环
- while循环
- do-while循环
- continue和break
//集合类型
- List(列表)
列表是一个有序的集合,你可以通过索引来访问或者修改元素。
ex:var list = [1, 2, 3]; - Set(集合)
集合是一个无序的集合,它只能包含不重复的元素。
ex: var set = {1, 2, 3}; - Map(映射)
映射是一个键值对的集合,键必须是唯一的。 - Queue(队列)
先入先出的集合。
//集合常用方法
forEach(): 用于遍历集合中的每个元素,没有返回值
map(): 将每个元素转换为新元素,返回转换后的集合
where(): 过滤集合中的元素,返回符合条件的元素集合
reduce(): 将集合中的元素组合起来,返回一个单一结果
//变量命名规则
- 变量名称必须由数字、字母下划线和美元符号组成
- 注意:标识开头不能是数字
- 标识符不能是保留字或关键字
- 变量名称区分大小写
// dart 关键字
abstract - 用于定义接口或抽象类中的方法或属性。
as - 用于在期望类型的表达式中进行类型转换。
assert - 用于在测试期望的条件是否满足。
async - 用于定义异步函数。
await - 用于暂停异步函数的执行,直到等待某个未完成的Future完成。
const - 用于定义常量。
continue - 用于跳过当前循环的剩余部分并开始下一次循环。
default - 用于switch语句中,表示一个默认的分支。
deferred - 用于延迟加载库。
do - 用于do-while循环的循环体。
dynamic - 表示动态类型,可以赋予任何类型的值。
else - 用于条件语句中的否定分支。
enum - 用于定义枚举类型。
export - 用于导出库。
extends - 用于表示一个类是另一个类的子类。
external - 用于声明在外部定义(如C代码)中实现的方法。
factory - 用于定义工厂构造函数。
false - 布尔类型的值,表示假。
final - 用于定义一个不可变的变量。
finally - 用于try-catch-finally语句中,无论是否发生异常,都将执行的代码块。
get - 用于定义getter方法。
hide - 用于导入库时,隐藏指定的API。
implements - 用于表示一个类实现了指定的接口。
import - 用于导入库。
in - 用于判断是否在集合中。
inout - 用于标记函数的输入参数。
instanceof - 用于检查对象是否是指定类的实例。
is - 用于检查对象是否是指定类型或者实现了指定的接口。
library - 用于声明库。
mixin - 用于混入。
native - 用于声明由宿主环境提供的方法实现。
new - 用于创建对象。
null - 表示空值。
on - 用于处理异常。
operator - 用于定义操作符。
out - 用于标记函数的输出参数。
part - 用于声明一个库的部分。
rethrow - 用于再次抛出一个捕获的异常。
static - 用于定义静态成员。
super - 用于表示父类的成员。
switch - 用于switch语句。
sync* - 用于定义一个同步生成器。
this - 用于表示当前对象。
throw - 用于抛出一个异常。
true - 布尔类型的值,表示真。
try - 用于try-catch-finally语句中,尝试执行的代码块。
typedef - 用于定义类型别名。
var - 用于定义变量,可以改变其类型。
void - 表示没有返回值的函数。
while - 用于while循环。
with - 用于混入。
yield - 用于生成器函数中返回值
// final 和 const 区别
final 是惰性初始化,可以在运行时赋值。
const 是编译时常量,不能运行时赋值。