变量与常量
- Dart 中变量使用
var
关键字声明。 - 变量可以被赋予不同类型的值
- 未被初始化的变量,默认值为
null
- 使用关键字
final
定义的变量只能被赋值一次。 - 使用
const
定义常量,编译时常量,字面量
数据类型
数值型:
num
, int
, double
。 int
和 double
继承于 num
字符串 String:
可以使用 单引号,双引号,三引号创建字符串。三引号可用来创建多行字符串。
在字符串的前面加上 r
创建原始字符串,原始字符串里面的转义字符不会转义
String str = r"Hello \n World";
打印结果为 Hello \n World
而不会换行
使用 +
操作符将两个字符串相加
String a = "Hello ";
String b = "World!";
print(a + b); // Hello World!
使用 *
操作符将字符串重复拼接
String handsome = "You are handsome! ";
String tripleHandsome = handsome * 3;
print(tripleHandsome);
打印结果为:
You are handsome! You are handsome! You are handsome!
使用 ==
操作符判断字符串是否相等:
String str1 = "Hello";
String str2 = "World!";
String str3 = "Hello";
print(str1 == str2); // false
print(str1 == str3); // true
使用下标获取某个索引的元素:
String str = "Hello";
print(str[0]); // H
print(str[2]); // l
获取字符串长度:str.length
判断字符串是否为空:str.isEmpty
截取字符串:str.substring(int startIndex, [int endIndex]);
定义
String str = "Hello World";
String mark = "!";
操作 | 使用的操作符或者方法 | 结果 |
---|---|---|
字符串相加 | str + mark |
Hello World! |
字符串重复拼接 | str * 3 |
Hello WorldHello WorldHello World |
判断字符串是否相等 | str == mark |
false |
获取字符串长度 | str.length |
11 |
判断字符串是否为空 | str.isEmpty |
false |
截取字符串 | str.substring(1, 5) |
ello |
是否包含某个字符串 | str.contains("He") |
true |
替换子字符串 | str.replaceAll("e", "a") |
Hallo World |
布尔型:
true
, false
Map
List
Dart
中的 List
类型相当于其他语言的数组,可以进行增删改查的操作
插入新元素
var aList = [4, 5];
- 在指定的元素插入一个元素:
// 在第 0 的位置上插入元素 3
aList.insert(0, 3);
// 结果:[3, 4, 5]
- 在指定的位置插入一组元素(List 插入 List):
// 在第 0 的位置上插入一组元素 [0, 1, 2]
aList.insertAll(0, [0, 1, 2]);
// 结果:[0, 1, 2, 3, 4, 5]
- 在末尾添加一个元素:
// 在末尾添加元素 6
aList.add(11);
// 结果:[0, 1, 2, 3, 4, 5, 6]
- 在末尾添加一组元素(List 拼接 List):
// 在末尾添加一组元素 [7, 8, 9]
aList.add([7, 8, 9]);
// 结果:[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
删除元素
var dList = [1, 2, 3, 4, 5];
- 删除指定位置的元素:
// 删除第 0 位置的元素
dList.removeAt(0);
// 结果:[2, 3, 4, 5]
- 删除最后一个元素:
// 删除最后位置的元素
dList.removeLast();
// 结果:[2, 3, 4]
- 删除某个元素:
// 删除 List 中的元素 3
dList.remove(3);
// 结果:[2, 4]
- 删除指定索引范围内的元素:
// 当提供一个索引范围时,不包含右边的索引
dList.removeRange(0, 1);
// 结果:[4]
- 删除满足特定条件的元素:
// 判断是否大于 5 的条件
bool isLargerThanFive(int value) {
return value > 5;
}
var someList = [1, 23, 34, 2, 34, 4, 5, 66];
// 删除大于 5 的元素
someList.removeWhere(isLargerThanFive);
// 结果:[1, 2, 4, 5]
改变某个索引位置的元素
// 将第 0 个元素的值改成 90
var cList = [1, 2, 3, 4];
cList[0] = 90;
// 结果:[90, 2, 3, 4]
查找元素
var sList = [1, 2, 3, 4, 5];
- 查找指定位置的元素
// 查找索引为 2 的元素
sList[2];
// 结果:3
- 查找数组第一个元素
sList.first;
// 结果:1
以上只是列出了一些常用的方法,更多的操作方法可以去
Dart
的代码文档去查看