09 dart列表基础(3)

1.list

以下是一些常用的队列表进行操作的符号,后面有注释,可以借助注释看

void main(){
  List list = <int>[1,2,3,4,5];
  print(list);
  print(list.length);
  print(list[0]);
  list.add(6); //添加元素 此时为[1,2,3,4,5,6]
  list.remove(2); //删除指定元素 此时为[1,3,4,5,6]
  list.removeAt(1); //删除指定位置的元素 此时为[1,4,5,6]
  list.insert(1,2); //在指定位置插入元素 这里指的是在索引为1的位置前面插入数字2,此时列表为[1,2,4,5,6]
  print(list);
  print(list.contains(3)); //判断是否包含指定元素,因为此时列表为[1,2,4,5,6],所以返回false
  print(list.indexOf(3)); //获取指定元素的索引,因为此时列表为[1,2,4,5,6],所以返回-1,即不存在
  print(list.last); //获取列表的最后一个元素,因为此时列表为[1,2,4,5,6],所以返回6
  print(list.first); //获取列表的第一个元素,因为此时列表为[1,2,4,5,6],所以返回1
  list.clear(); //清空列表,此时列表为空
  print(list); //此时列表为[]
  list.addAll(<int>[1,3,5,7,9]); //添加多个元素,此时列表为[1,3,5,7,9]
  print(list);
}

这里要注意的是,remove为移除列表里面的数字,而removeAt则是通过索引删除,insert要注意的是是在指定元素之前插入元素,而不是后面,关于remove,还有个值得注意的点,见下方:

void main(){
  List list = <int>[1,2,3,4,5];
  var a = list.remove(2);
  var b = list.remove(10);
  print(a);
  print(b);
}

不妨猜一猜输出结果?第一个输出结果是2嘛?第二个会报错?

实际上,输出结果第一个是true,第二个是false,remove不会返回值,而是判断能否remove的结果,当然,只要使用了remove,就会执行,除非不能执行,如果此时打印结果,会发现结果是[1,3,4,5]

2.Set

对于集合,上次已经有所讲解,除了关于索引的部分与list不一样,因为set不能索引,其他大部分都相同,主要还是转列表和转集合

void main(){
Set s1 = {1,2,3}; //Set是一个无序的集合,不能重复
List l2 = [1,1,1,2,3,4,5,5,6];
s1.add(4);
s1.add(5);
List l1 = s1.toList();
Set s2 = l2.toSet(); //把List转成Set,去重
List l3 = s2.toList();
print(l1);
print(l3);
}

这里展示了一个单独的转列表和先转集合去重,再转列表的示例

下节会讲,map补充和函数补充

今天就先讲到这里,祝大家天天开心!代码一遍就通!没有debug的烦恼!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值