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

文章目录

  • 一、两种定义方式
  • 二、属性和方法
    • 1.属性
    • 2.方法
  • 三、数组的遍历
    • 1.普通遍历
    • 2.forEach函数
    • 3.map函数
    • 4.where函数
    • 4.any和every


一、两种定义方式

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类型

代码实现
dart语言中List数组定义,属性,方法,遍历,不详细打我_第1张图片
注:

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

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

思考?打印的list

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

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


修改和插入dart语言中List数组定义,属性,方法,遍历,不详细打我_第2张图片
这里要注意的是,传入函数的参数(确定位置)是在哪,我图中画的差不多挺好理解了,可以理解为就是数值间的空位。


三、数组的遍历

1.普通遍历

dart语言中List数组定义,属性,方法,遍历,不详细打我_第3张图片

2.forEach函数

dart语言中List数组定义,属性,方法,遍历,不详细打我_第4张图片
注:forEach括号内是一个函数体,其中value是自己取名的参数(可以用其他词代替)。参数实际指的时数组中的值。

3.map函数

dart语言中List数组定义,属性,方法,遍历,不详细打我_第5张图片
思考?
这里我们假设直接map换成forEach行吗(其他不变)?

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

4.where函数

dart语言中List数组定义,属性,方法,遍历,不详细打我_第6张图片
打印的结果:[7,8,9]
思考?
这里将函数where改成map又是怎样的打印情况?

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

4.any和every

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

你可能感兴趣的:(dart,移动开发,前端,flutter)