1.相关细节
Dart中所有东西都是对象,包括数字、函数等它们都继承自Object,并且默认值都是null(包括数字)因此数字、字符串都可以调用各种方法
访问控制,默认情况下都是 public,如果需要设置为私有属性,则在方法或者属性前使用 “_”
注释 //单行 /**/多行
as 类型转换(类似java强转)
is 如果对象是指定类型则返回 true el.if (emp is Person)
is! 如果对象是指定类型则返回 false
?? 运算符,比如,t??'test' 是 t!= null ? t : 'test' 的缩写
级联操作,允许对同一对象或者同一函数进行一系列操作
testObj.add('t')
..delete('d')
..show()
2.数据类型
Dart中支持以下数据类型:
①数字 (int 和 double 都是 num 的子类)
int(长度不超过 64位,-2^63 ~ 2^63 - 1 ) double(64位的双精度浮点数字)
②字符串 Dart 字符串是 UTF-16 编码的字符序列。可以使用单引号或者双引号来创建字符串
String str = "chen";
③布尔 Dart 使用 bool 关键字表示布尔类型,布尔类型只有两个对象 true 和 false,两者都是编译时常量。
④数组 List 数组 Array 是几乎所有编程语言中最常见的集合类型,在 Dart 中数组由 List 对象表示。通常称之为 List。
⑤Set 去重的集合
⑥Map map 是一个无序的 key-value (键值对)集合,通过大括号语法可以为 map 添加,获取,设置元素。
Map<int,String> map = {1:"a",2:"b"}; map.forEach((m,n) => print("n"));
⑦Runes(字符) Unicode 编码为每一个字母、数字和符号都定义了一个唯一的数值。因为 Dart 中的字符串是一个 UTF-16 的字符序列,所以如果想要表示 32 位的 Unicode 数值则需要一种特殊的语法。
通常使用 \uXXXX 来表示 Unicode 字符,XXXX 是一个四位数的 16 进制数字。例如心形字符(♥)的 Unicode 为 \u2665。对于不是四位数的 16 进制数字,需要使用大括号将其括起来。例如大笑的 emoji 表情(😆)的 Unicode 为 \u{1f600}。
⑧Symbols Symbol 表示 Dart 中声明的操作符或者标识符,该类型的对象几乎不会被使用到,但是如果需要按名称引用它们的 API 时就非常有用。因为代码压缩后会改变这些符号的名称但不会改变具体的符号。
void test1(){
//赋值 可以使用 var 声明变量,也可以使用类型来声明变量,const声明常量
//Dart中数值是num,它有两个子类型:int 和 double
String str = "chen";
//多行赋值""" """
String str2 = """lei
zheng""";
String name = str+str2;
String s;
bool flag;
int i;
print("string $s $flag $i");
List<int> list = new List();
list.add(1);
list = [1,2,3];
Set<String> set = new Set();
set.add("a");
set.add("b");
set.add("a");
set.add("c");
print(set.toString());
Map<int,String> map = {1:"a",2:"b"};
map.forEach((m,n) => print("$m -> $n"));
}
运行结果
string null null null
{a, b, c}
1 -> a
2 -> b
网友评论