1.Dart基本概念
Dart中所有的变量对对应着一个对象,初始值为null,即使是基本数据类型,函数方法都算被看成对象,null,它们都是继承自Object.
Dart 会自动根据数值,推断其类型。当您想要明确地声明没有类型时,使用特殊类型的dynamic。例如 dynamic arg;
DART支持泛型类型,如列表< int >(一个整数列表)或列表<动态>(任何类型的对象列表)
不像java,Dart没有关键词public、private 等修饰符
标识符可以从字母或下划线开始
2.Dart基本数据类型
int
整数值不大于64位,这取决于平台。在DART VM上,值可以从-263到262。但是要编译成JavaScript,所以dart得数值允许值从-2的53次幂到2的53次幂-1。
double
由IEEE 754标准规定的64位(双精度)浮点数字。
int/double 转String
// String -> int
var one = int.parse('1');
assert(one == 1);//目前还不知道这个assert方法的作用,后续解决
// String -> double
var onePointOne = double.parse('1.1');
assert(onePointOne == 1.1);
// int -> String
String oneAsString = 1.toString();
assert(oneAsString == '1');
// double -> String
String piAsString = 3.14159.toStringAsFixed(2);
assert(piAsString == '3.14');
常量的定义
const msPerSecond = 1000;
const secondsUntilRetry = 5;
const msUntilRetry = secondsUntilRetry * msPerSecond;
String
DART字符串是UTF16代码单元的序列。可以使用单引号或双引号创建字符串:
var s1 = 'Single quotes work well for string literals.';
var s2 = "Double quotes work just as well.";
var s3 = 'It\'s easy to escape the string delimiter.';
var s4 = "It's even easier to use the other delimiter.";
Boolean
Dart中布尔类型用bool表示,赋予true/false,用法跟java一样。
List
也许在几乎每种编程语言中最常见的集合是数组或对象的有序组。在DART中,数组是列表对象,所以大多数人只把它们称为列表。
列表使用基于零的索引,其中0是第一个元素的索引,而List.List- 1是最后一个元素的索引。你可以得到一个列表的长度,并参考列表元素,就像你在JavaScript中一样:
var list = [1, 2, 3];
assert(list.length == 3);
assert(list[1] == 2);
list[1] = 1;
assert(list[1] == 1);
若要创建一个编译时间常量的列表,请在列表文字之前添加const。
var constantList = const [1, 2, 3];
// constantList[1] = 1; // Uncommenting this causes an error.
Maps
//声明map 方式1
var map1=new Map();
//声明map 方式2
var map2={
"key":"value"
};
map2["key1"]="value1";
map1["key2"]="value2";//给map添加数据
map1[1]="value3";//得到value
print(map1[1]);
另外还有Runes 和Symbols 类型。我也不是很明白,在此就不做太多的介绍
final 和const
如果你不打算改变一个变量,使用final或const修饰变量,而不是var或一个类型。最终变量只能设置一次;const变量是编译时常数。