我想检查条件
if (value in List) {
  exist
} else { 
  not exist
}
但没有什么可以帮助任何有想法的人请分享.
My List = _quantityController[];
itemId是整数
我想检查我的列表数组中是否存在我的项目ID ...谢谢!
Say*_*yka 31
检查类对象数组
比 Abdullah Khan 的方法更好的是使用any而不是where,因为where 使得数组被完全扫描。Any 找到一个就停止。
class DownloadedFile {
 String Url;
 String location;
}
List<DownloadedFile> files = [];
bool exists = files.any((file) => file.Url == "<some_url>");
Abd*_*han 19
以上是当前问题的正确答案。但是,如果像我这样的人在这里检查类对象列表中的值,那么这就是答案。
class DownloadedFile {
 String Url;
 String location;
}
下载文件列表
List<DownloadedFile> listOfDownloadedFile = List();
listOfDownloadedFile.add(...);
现在检查特定值是否在此列表中
var contain = listOfDownloadedFile.where((element) => element.Url == "your URL link");
if (contain.isEmpty)
   //value not exists
else
  //value exists
也许有更好的方法/方法。如果有人知道,请告诉我。:)
Mik*_*kki 14
List<int> values = [1, 2, 3, 4];
values.contains(1); // true
values.contains(99); // false   
如果您使用自定义类,请确保重写==()方法,以便 dart 可以比较两个对象。
使用它来检查数据是否在列表内:
mylist.contains(data)
这是我的情况,我有一个这样的列表,我正在列表中寻找特定的 UUID
 // UUID that I am looking for
 String lookingForUUID = "111111-9084-4869-b9ac-b28f705ea53b"
 // my list of comments
 "comments": [
            {
                "uuid": "111111-9084-4869-b9ac-b28f705ea53b",
                "comment": "comment"
            },
            {
                "uuid": "222222-9084-4869-b9ac-b28f705ea53b",
                "comment": "like"
            }
 ]
这就是我在列表中迭代的方式
// This is how I iterate
var contain = someDataModel.comments.where((element) => element['uuid'] == lookingForUUID);
      if (contain.isEmpty){
        _isILike = false;
      } else {
        _isILike = true;
      }
这样我就得到了lookingForUUID
希望对某人有帮助
这是一个完整的例子
void main() {
  List<String> fruits = <String>['Apple', 'Banana', 'Mango'];
  bool isPresent(String fruitName) {
    return fruits.contains(fruitName);
  }
  print(isPresent('Apple')); // true
  print(isPresent('Orange')); // false
}
| 归档时间: | 
 | 
| 查看次数: | 16767 次 | 
| 最近记录: |