Flutter:检查列表是否只包含某个值

4 if-statement list dart flutter

我需要知道列表中是否只有等于“Validated”的字符串,如何用 1 行代码检查它?(如果列表为空,则我之前已经检查过条件,因此这种特殊情况并不重要)。

List<String> state_str_list = ["Validated", "Draft", "Draft", "Waiting", "Validated"];
if (???) {
    print("all values in state_str_list are equals to 'Validated' !");
}
Run Code Online (Sandbox Code Playgroud)

小智 5

多亏了你,我才来到这里:

contains_only(var _list, var e) {
  _list.every((element) => element == e);
}
print(contains_only(["Validated", "Draft", "Draft", "Waiting", "Validated"], "Validated"));
Run Code Online (Sandbox Code Playgroud)

  • 或者更简单:`_list.every((element) =&gt; element == e);` (2认同)