版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/hxl517116279/article/details/88379718
声明
自动
//1
List<int> l = new List();//可省略new
l
..add(1)
..add(2)
..add(3);
//2
List<int> l1=[1,2,3];
定长
List<int> l = new List(3);
// print(l[0]); //null
l[0] = 1;
l[1] = 2;
l[2] = 3;
Dart中可以直接打印List包括List的元素,List也是对象 。
Java中直接打印List结果是地址值。
属性
名称 | 说明 |
---|---|
isEmpty | 是否为空 |
isNotEmpty | 是否不为空 |
first | 第一个对象 |
last | 最后一个对象 |
length | 个数 |
reversed | 反转 |
方法
名称 | 说明 |
---|---|
add | 添加 |
addAll | 添加多个 |
insert | 插入 |
insertAll | 插入多个 |
indexOf | 查询位置 |
indexWhere | 按条件查询 |
remove | 删除 |
removeAt | 按位置删除 |
fillRange | 按区间填充 |
getRange | 按区间获取 |
shuffle | 随机变换顺序 |
sort | 排序 |
sublist | 返回子列表 |
添加
List<int> l = new List();
l
..add(1)
..addAll([2, 3, 4, 5])
..insert(0, 6)
..insertAll(6, [6, 6])
;
查询
print(l.indexOf(5));
print(l.indexWhere((it) => it == 4));
删除
l.remove('a');
l.removeAt(5);
Range
l.fillRange(0, 3, 9);//从第0(包括)到第3位(不包括)填充为9
print(l.getRange(0, 5));//返回0到5位(不包括)
洗牌
l.shuffle();
print(l);
l.shuffle();
print(l);
排序
数字
l.sort();
print(l);
日期
List<DateTime> dtList = new List();
dtList.addAll([
DateTime.now(),
DateTime.now().add(new Duration(days: -12)),
DateTime.now().add(new Duration(days: -2))
]);
print(dtList);
dtList.sort((a, b) => a.compareTo(b));
print(dtList);
复制子列表
print(l);
var l2 = l.sublist(1,4);
print(l2);
操作符
名称 | 说明 |
---|---|
+ | 连接 |
[] | 取值 |
[]= | 赋值 |
var l1 = [1, 2, 3];
var l2 = [4, 5, 6];
print(l1 + l2);
l1[2] = 9;
print(l1[2]);