dart学习(五)

List集合

大多数编程语言中集合是数组或者一组有序的对象,在dart中,数组是list对象

dart中,list字面量跟js中数组字面量很像

var list = [1,2,3];

List ls = [1,'a',true];

list可以通过泛型指定存储元素的类型

List<int> list = new List(); //list只能存放int类型
list.add(1); // true
list.add("2"); // Error

list的索引从0开始,0是第一个元素的索引

var list = [1,2,3,4];
list[0] == 1; //true
print(list[1]); //2

List的常见属性

  • first:返回集合的第一个元素E
  • last:返回集合的最后一个元素E
  • length:返回集合的长度int
  • reversed:将集合反转,不会改变原集合的结构,返回一个新的集合

  • isEmpty:返回一个布尔值,集合为空返回true,不为空返回false

    var list = [1, 2, 3, 'qwe'];
    var list2 = list.reversed;  // ['qwe',3,2,1]
    print(list.first);  //1
    print(list.last);   //'qwe'
    print(list.length); //4
    print(list.isEmpty); //false 
    print(list2.first);  // 'qwe'

     

List常用方法

  • add(E e) :往集合末尾添加一个元素  返回值:void
  • addAll(Iterable iterable) :将迭代对象的所有元素添加到当前集合末尾   返回值:void
  • asMap()  :将当前list集合转换成map集合,索引值为键,对应元素为值  返回值:map对象
  • clear()  :清除当前集合的所有元素  返回值: void
  • fillRange(int start,int end,[E e]):当前集合第start(包括start)到第end(不包括end)元素以e来填充,如果第三个参数不传,则以null来填充,返回一个新的list  返回值: List
  • getRange(int start,int end):获取当前集合第start到第end的元素,并返回一个新的List  返回值:List
  • indexOf(E e,[int start = 0]):从start位开始查找,查找当前集合是否存在e元素,如果存在,则返回第一个找到的位置,如果不存在则返回-1   返回值 int
  • insert(int index,E e):在当前集合的index位置插入e元素  返回值:void
  • inserAll(int index,Iterable iterable):在当前集合的index位置插入可迭代对象iterable  返回值:void
  • lastIndexOf(E e,int  start):从start位置开始查找,返回当前集合中e元素最后出现的位置  返回值:void
  • remove(Object value):移除当前集合中第一个value元素,移除成功返回true,否则返回false  返回值:bool
  • removeAt(int index):移除当前集合中index位置的元素   返回值:bool
  • .......(list方法很多,需要用到可查询api文档)
var list = [1,2,2,3,4];
list.add(5);  // [1,2,2,3,4,5]
var arr = [6];
list.addAll(arr);  //[1,2,2,3,4,5,6]
var map = list.asMap(); //{0:1,1:2,2:2,3:3,4:4,5:5,6:6}
print(list.indexOf(2)); //1

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值