先从一段简单的Dart代码入手。
// 定义一个方法
printNumber(num aNumber) {
//参数类型为num,
print('The number is $aNumber.'); // 打印信息到控制台,$aNumber等价于${aNumber},表示取aNumber变量的值。
}
// APP运行入口
main() {
var number = 42; //定义并初始化变量,var表示没有给变量制定类型
printNumber(number); // 调用方法
}
如果把Dart语言开发比喻成玩游戏,那么我们必须遵守它的游戏规则,Dart语言有下面这些规则:
*给变量赋值时,只能把对象赋值给变量,每一个对象都是类的实例。而且,数字,方法和null值都是对象,所有的对象继承自Object类。
*声明变量的时候指定具体类型(像num aNumber这样指定类型为num)可以清晰的表明你的意图,并且可以被工具静态检测,不过你也可以不指定。如果你没有为变量指定具体类型的话,那么你在调试程序的时候会看到该变量为特殊的类型dynamic
*Dart会在运行前对所有的代码进行语法分析。
*Dart支持顶层方法(比如说main()方法),同时支持类级别或对象级别的方法,你还可以在方法内部新建方法(嵌套方法或本地方法)。
*同样,Dart支持顶层变量,同时支持类级别或对象级别的变量,实例变量有时候被称为域或者属性。
*与Java不同的是,Dart没有关键词public,protected和private,不过可以用下划线(_)表示private。
*标识符(变量名或方法名等)可以以字母或下划线_开头,
*Dart工具能报告两类问题:告警warning和错误error。Warning仅仅暗示代码可能无法正常工作,但是程序还能运行。Error可能出现在编译时或运行时,而编译时出现错误后程序就无法运行,运行时错误就会出现异常。
*任何变量的初始值为null,即使num类型的初始值也是null,因为它也是对象。
Dart的七种数据类型
1.numbers
2.strings
3.booleans
4.lists (即arrays)
5.maps
6.runes (用字符串表示Unicode characters)
7.symbols
1.numbers包括int(范围为-2^53到2^53)和double,num类型操作符请查看