这是【Dart 教程系列第 12 篇】,如果觉得有用的话,欢迎关注专栏。
Dart 根据条件删除数组中的元素,用 removeWhere()
方法,源码定义如下
void removeWhere(bool test(E element));
该方法无返回值,参数的返回值为 bool 类型
例 1
List l1 = ["五月", "六月", "七月", "六月", "六月"];
l1.removeWhere((e) => e == "六月");
print(l1); // [五月, 七月]
removeWhere 会删除所有符合条件的元素,原数组发生改变。如果没有符合条件的元素,也不会报错,原数组不会发生改变。
例 2
List l2 = [5, 8, 19, 3, 7, 1];
l2.removeWhere((e) => e > 4);
print(l2); // [3, 1]
例 3
List l3 = ["一月", "二月", "三月", "AllenSu"];
l3.removeWhere((e) => e.contains("月"));
print(l3); // [AllenSu]
使用 removeWhere 方法时,被移除元素的数组不能为固定长度的数组,否则会抛出异常。
更多 Dart 中 List 数组的方法,推荐一篇博客 Dart 中 List 数组的常用方法
你的问题得到解决了吗?欢迎在评论区留言。
赠人玫瑰,手有余香,如果觉得文章不错,希望可以给个一键三连,感谢。
结束语 技术是一点一点积累的,大神也不是一天就可以达到的。原地不动就是退步,所以每天进步一点点。 最后,附上一句格言:"好学若饥,谦卑若愚",望共勉。