这是【Dart 教程系列第 22 篇】,如果觉得有用的话,欢迎关注专栏。

Dart 倒序查找数组中第一个满足条件的元素,用 lastWhere () 方法,源代码定义如下

E lastWhere(bool test(E element), {E orElse()})

返回值为泛型,参数 test 为指定的条件,返回值为 bool ,第二个 orElse 为可选参数,是当数组中没有满足指定条件的元素设置的自定义值。

例 1

  List<int> l1 = [8, 12, 4, 1, 17, 33, 10];int a = l1.firstWhere((e) => e > 10);int b = l1.firstWhere((e) => e > 50, orElse: () => -1);int c = l1.firstWhere((e) => e > 50);print(a); // 33  当前数组倒序第一个比 10 大的元素是 33print(b); // -1 当前数组中没有比 50 更大的元素,所以返回 orElse 中我们预先设置好的值print(c); // 如果数组中没有符合条件的元素,而且也没有指定 orElse ,则会错误

例 2

  List<String> l2 = ["一月", "二月", "三月", "四月"];String str = l2.lastWhere((e) => e.contains("月"));print(str); // 四月

更多 Dart 中 List 数组的方法,推荐一篇博客 Dart 中 List 数组的常用方法

你的问题得到解决了吗?欢迎在评论区留言。

赠人玫瑰,手有余香,如果觉得文章不错,希望可以给个一键三连,感谢。


结束语

技术是一点一点积累的,大神也不是一天就可以达到的。原地不动就是退步,所以每天进步一点点。

最后,附上一句格言:"好学若饥,谦卑若愚",望共勉。

【Dart 教程系列第 22 篇】Dart 之 lastWhere 倒序查找数组中第一个满足条件的元素相关推荐

  1. 【Dart 教程系列第 21 篇】Dart 之 firstWhere 返回数组中第一个满足条件的元素

    这是[Dart 教程系列第 21 篇],如果觉得有用的话,欢迎关注专栏. Dart 返回数组中第一个满足条件的元素,用 firstWhere() 方法,源代码定义如下 E firstWhere(boo ...

  2. 【Dart 教程系列第 19 篇】Dart 之 indexWhere、lastIndexWhere 返回数组中第一个满足条件的元素的索引

    这是[Dart 教程系列第 19 篇],如果觉得有用的话,欢迎关注专栏. Dart 返回数组中第一个满足条件的元素的索引,用 indexWhere() 方法或者 lastIndexWhere() 方法 ...

  3. 【Dart 教程系列第 28 篇】Dart中的 Map 和实体类的相互转换

    这是[Dart 教程系列第 28 篇],如果觉得有用的话,欢迎关注专栏. 首先声明一个实体类 class People {String name; // 姓名String area; // 地区Str ...

  4. 【Dart 教程系列第 10 篇】Dart 之 removeLast 删除数组的最后一个元素

    这是[Dart 教程系列第 10 篇],如果觉得有用的话,欢迎关注专栏. Dart 删除数组的最后一个元素,用 removeLast() 方法,该方法无参数,返回被删除对象. List<Stri ...

  5. 【Dart 教程系列第 49 篇】Dart 是值传递还是引用传递

    这是[Dart 教程系列第 49 篇],如果觉得有用的话,欢迎关注专栏. 文章目录 一:结论 二:什么是值类型 ? 三:什么是引用类型 ? 四:值类型和引用类型的主要区别 五:验证 Dart 中的值传 ...

  6. 【Dart 教程系列第 6 篇】Dart 之 addAll 合并两个数组(向数组中一次添加多个元素)

    这是[Dart 教程系列第 6 篇],如果觉得有用的话,欢迎关注专栏. Dart 合并两个数组,或者说是向数组中一次添加多个元素,可以使用 addAll() 方法. 该方法无返回值,参数类型为 Ite ...

  7. 【Dart 教程系列第 9 篇】Dart 之 clear 清空数组

    这是[Dart 教程系列第 9 篇],如果觉得有用的话,欢迎关注专栏. Dart 清空数组用 clear() 方法,该方法无返回值,无参数. List<String> l1 = [&quo ...

  8. 【Dart 教程系列第 40 篇】Dart 之 trim,trimLeft,trimRight 字符串去除空格

    这是[Dart 教程系列第 40 篇],如果觉得有用的话,欢迎关注专栏. trim 源码如下所示 String trim(); 语法 去除字符串中左右两边的空格,注意不是去掉字符串中所有的空格.如果两 ...

  9. 【Dart 教程系列第 17 篇】Dart 之 every 判断数组中是否每个元素都满足指定的条件

    这是[Dart 教程系列第 17 篇],如果觉得有用的话,欢迎关注专栏. Dart 判断数组中是否每个元素都满足指定的条件用 every() 方法,源代码定义如下 bool every(bool te ...

最新文章

  1. 开源网络备份软件bacula数据恢复(二)
  2. 关于在DataTable中执行DataTable.Select(条件)返回DataTable的解决方法
  3. MATLAB 画图时插入图例
  4. 重磅新作!预训练语言模型入门必读好书 | 送书福利
  5. Nature子刊:中科院动物所合作揭示灵长类血管衰老的驱动力
  6. webConfig中System.Web 和 System.WebServer节点读取
  7. linux 自动启动设置
  8. .net 本地文件管理 代码_Gitee 在线解决代码冲突上线,解决冲突不再需要 Git 命令...
  9. crm创建启用停用用户
  10. 微信JS-SDK项目学习 --实现分享样式控制thinkphp
  11. php的在线问卷调查_php 在线问卷调查程序一
  12. mac切换网卡|IP
  13. odb格式Linux,ODB格式文件 如何打开ODB文件 ODB是什么格式的文件 用什么打开 - The X 在线工具...
  14. 18. C语言 -- 指针数组和数组指针
  15. Ubuntu中禁止与使能鼠标中键的复制功能(vscode出现莫名其妙的多余的代码段)
  16. 线性地址转换物理地址
  17. 如何正确使用 Mac 电脑的“恢复模式”?
  18. Git 与 Github 基础一步入门
  19. 基于Bluemix云平台的一个文本转语音应用
  20. 赋科技以温度,百度集团副总裁吴甜入选《财富》“40 Under 40榜单”

热门文章

  1. 什么是微型计算机的字长,计算机的字长是指什么
  2. 微信小程序实现顶部导航栏渐变
  3. ACM连续输入多组数据问题
  4. matlab 水平投影,matlab图像处理方面的问题。水平投影和垂直投影!
  5. 面试官教你 ,如何应对秋招面试(不看后悔篇)!!!
  6. 华工计算机高等数学b下作业,华工高等数学下作业
  7. mysql 表 视图 索引吗_Mysql多表查询, 视图,事务,索引,函数,go连接数据库
  8. oracle exception others,Oracle PL/SQL之EXCEPTION -- WHEN OTHERS THEN
  9. 阿里云共享和独享云虚拟主机该怎么选?
  10. Wordpress免费建站图文教程(二):建站虚拟主机的购买