dart使用List类来存放一个数组,如:
List<int> list = [1,2,3,4];
list中存放不同的数据类型:
List<dynamic> list = [1,2,45,"as"];
或者是var list = [1,2,45,"as"];
List类封装了一些方法:
list.add();
list.addAll(); 合并两个list
list.insert(index,element); 在指定index处插入值
list.insertAll(index,list) 在指定index处插入list 其余顺延
list.followedBy(list) 将自身和参数内list合成一个List
list.remove(obj) 删除具体的元素
list.removeAt(index) 删除索引位置元素
list.removeLast()删除末尾元素
list.removeRange(start,end) 范围删除
list.removeWhere() 根据条件删除
list.clear() 清空数组
list.setRange(startIndex,endIndex,list) 范围修改List的值
list.replaceRange(start,end,list)范围替换 含头不含尾
list.fillRange(start,end,value) 从start-end 每个元素用value替换
list.retainWhere(()=>(bool)) 根据条件筛选元素
list.setAll(index,list) 从index开始,使用list内的元素逐个替换本list中的元素
list.indexOf(element,[start]) 查找指定元素在list中的索引
list.lastIndexOf(obj,index) 从后往前查找,返回第一个的index
list.elementAt(index) 获取指定索引位置的元素
list.any((element)=>(bool)) 判断List中是否有任意一个元素符合给定的参数
list.every((element)=>(bool)) 判断List中是否每个元素都符合参数函数
list.contains(obj) List中是否存在给定的obj
list.firstWhere((element)=>(bool)) 返回第一个满足条件的元素(不是元素的index)
list.indexWhere((e)=>(bool)) 返回第一个满足条件的元素的index
list.lastIndexWhere((e)=>(bool)) 从后向前找 返回第一个满足条件的元素的index
list.lastWhere((e)=>(bool)) 从后往前找,返回第一个满足条件的元素的值(不是index)
list.forEach() List遍历每个元素
list.fold(initValue,(preValue,element)=>()); 根据现有的List和给定的initValue,指定一个参数函数规则,对List每个元素做操作,并将结果返回。
list.reduce((a,b)=>(某种操作)) 用指定的方法对元素做连续操作,将结果返回
skip(count)越过count个元素后,开始返回list的Iterable
skipWhile((e)=>(bool)) 根据参数函数,找到第一个不符合条件的元素,然后将其及其后的元素返回
take(count) 从0开始取count个元素,并返回结果
takeWhile((e)=>(bool)) 从0开始取,直至第一个不符合函数的元素,将其前面的元素都返回。
where((e)=>(bool) 根据指定参数函数筛选每个元素,符合条件的元素组成一个新的Iterable
singleWhere((e)=>(bool>) 找到那唯一满足条件的元素
whereType() 从无指定泛型的List中,筛选出指定类型的数据。
文章评论