dart语言中List数组定义,属性,方法,遍历

举报
nineteens 发表于 2021/03/16 17:36:34 2021/03/16
【摘要】 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函数枣庄人流医院哪个好 http://mobile.3635555.cn/

  思考?

  这里我们假设直接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。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。