dart语言中List数组定义,属性,方法,遍历,不详细打我


一、两种定义方式

1.静态

var list=['a','b','c'];

2.动态

var list=new List();
list.add('a');
list.add('b');
list.add('c');

二、属性和方法

1.属性

常用属性:
1.length 长度
2.reversed 翻转
3.isEmpty 是否为空
4.isNotEmpty 是否不为空
这里值得注意的是,翻转过后的数组,要用toList方法,才能成为一个新的数组(该方法后面会将)。

  List list=['a','b','c'];
  List list1=list.reversed;
  print(list);   //结果为:(c,b,a)
  print(list.toList);   //结果为:[c,b,a]

2.方法

代码如下(示例):
常用属性:
1.add 增加
2.addAll 拼接数组
3.indexOf 查找 传入具体值
4.remove 删除 传入具体值
5.removeAt 删除 传入索引值
6.fillRange 修改
7.insert(index,value) 指定位置插入
8.insertAll(index,value) 指定位置插入数组
9.toList 其他类型转换为List类型

代码实现
在这里插入图片描述
注:

惰性的删除
我们重新定义一个数组。

var myList=['a','b','c','b'];
//用传入确定值的函数删除字符 b。
myList.remove('b');
print(myList);

思考?打印的list

最后的答案是:a,c,b

我们不难知道,该函数删除有惰性,比如有多个重复值时,只删除第一个。


修改和插入在这里插入图片描述
这里要注意的是,传入函数的参数(确定位置)是在哪,我图中画的差不多挺好理解了,可以理解为就是数值间的空位。


三、数组的遍历

1.普通遍历

在这里插入图片描述

2.forEach函数

在这里插入图片描述
注:forEach括号内是一个函数体,其中value是自己取名的参数(可以用其他词代替)。参数实际指的时数组中的值。

3.map函数

在这里插入图片描述
思考?
这里我们假设直接map换成forEach行吗(其他不变)?

结果时会报错,因为forEach函数的返回类型为void(就是没有返回值)

4.where函数

在这里插入图片描述
打印的结果:[7,8,9]
思考?
这里将函数where改成map又是怎样的打印情况?

打印结果:[false, false,false,true, true, true]。
注:前面说到,map函数返回的是表达式的结果

4.any和every

这个就来的直白了。
1.any任一满足,就返回true,反则false。
2.every全部满足,才返回true,反则false。

  • 6
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值