如何在Dart中一次性获得满足条件的List中的第一项?

Clo*_*Sun 1 dart

在 Dart (Flutter) 中,我可以一次性获得 List 中满足条件的第一项吗?

目前,我获得满足条件的列表中的第一项的方式如下 - 即 1) 执行“where” 2) 然后请求“first”:

List<Currency> currencies = ...;
Currency dollar = currencies.where((currency) => currency.code == "USD").first;
Run Code Online (Sandbox Code Playgroud)

它不接受类似的东西:

Currency dollar = currencies.first((currency) => currency.code == "USD");
Run Code Online (Sandbox Code Playgroud)

我错过了什么吗?

che*_*ins 13

你试过.firstWhere()吗?

List<Currency> currencies = ...;
Currency dollar = currencies.firstWhere((currency) => currency.code == "USD");
Run Code Online (Sandbox Code Playgroud)

  • 请记住,当未找到对象时,此函数将引发异常。 (4认同)