list - 如何将多个列表合并为一个列表?镖
问题描述
我有一个
class shop {
int id;
String name;
List<Product> products;
}
class Product {
int id;
String productName;
}
每个商店都有自己的产品,如何将所有商店产品合并到一个列表中如何创建所有产品的列表
解决方案
您可以简单地Lists
与+
运算符合并:
List<Product> list1 = ...;
List<Product> list2 = ...;
List<Product> list3 = ...;
List<Product> mergedList = list1 + list2 + list3;
此外,Dart 2.3
更高版本还支持扩展运算符,可按如下方式使用:
List<Product> mergedList2 = [...list1, ...list2, ...list3];
对于动态数量的商店,您可以使用基本的 forEach:
List<Shop> shops = ...;
List<Product> mergedList = List();
shops.forEach((shop) => mergedList.addAll(shop.products));
推荐阅读
- python - 是否可以使用 Python 将环境变量传递给 VM 实例启动脚本?
- azure-active-directory - 将 EventHubConsumerClient 连接到 Azure IoTHub 不适用于托管标识
- kdb - 取消分组是否适用于具有多个要取消分组的列的表?
- typescript - 如何为函数赋予对象类
- python - 对于给定的 i/p = {“Ram”:“Chennai”,“Laxman”:“孟买”,“斯蒂芬”:“钦奈”}
- swift - UINavigationItem.LargeTitleDisplayMode.never 包装在 UISplitViewController 中时仍然显示大标题的背景
- flutter - Flutter中的iOS图片多选
- ionic-framework - 如何将 Ionic CLI 与 pnpm 一起使用
- python - Python乘以字符串内的值
- sql-server - TSQL 窗口函数将数据集分成组