【问题标题】:How to check if list contains particular value in Dart?如何检查列表是否包含 Dart 中的特定值?
【发布时间】:2020-03-13 06:23:05
【问题描述】:

如果 list 包含该值,我想得到 true。目前,我粘贴在那里的这段代码返回错误。如果值存在,我希望该值应该为真。

   void main() {
  var demo = [
    {123, 1},
    {234, 1}
  ];

  print(demo.contains(123));

}

【问题讨论】:

  • 澄清一下,列表中的元素实际上是 Set 类型(这有点像 List,其中每个对象只能出现一次。)。

标签: list dictionary dart nested-lists


【解决方案1】:

如果您想将逻辑“传递”到列表列表,您可以尝试内置 .any().every() 函数。

void main() {
  var demo = [
    {123, 1},
    {234, 1}
  ];

  print(demo.any((item) => item.contains(123)));
  // output: true
}

【讨论】:

    【解决方案2】:
    var list = [123,11,202]; // list of int
    
    list.contains(123); // true
    
    
    var map = {'id':'123','name':'john'}; 
    
    map.containsValue('123'); // true
    
    var demos = [
        {123, 1},
        {234, 1}
      ];
    
      print(demos[0].contains(123)); //true
    
      **//OR**
    
    demos.forEach((demo){
         print(demo.contains(123)); // to check all items
      });
    

    希望对你有帮助

    【讨论】:

    • 如果您也想回答这个问题,我将不胜感激,因为 contains 已经是一个循环,那么为什么我们需要 forEach 循环?
    • 因为 demos = [{},{}] 包含嵌套列表,所以要检查所有可以使用 forEach() 的项目
    • 非常感谢您对此的回复。现在我明白了,包含作为嵌套列表中每个元素的嵌套循环工作。我说的对吗?
    猜你喜欢
    • 1970-01-01
    • 2019-07-04
    • 1970-01-01
    • 2013-02-10
    • 2020-05-24
    • 1970-01-01
    • 2021-10-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多