提问人:Kis 提问时间:2/17/2023 更新时间:2/17/2023 访问量:33
Flutter 如何将一个包含键和值的列表添加到另一个包含键和值的(主)列表,其中键“id”在 2 个列表中相同
Flutter how to add a List with keys and values to another (Master) list with keys and values where the keys "id" are same in the 2 lists
问:
我在组合 2 个列表时遇到了一些小问题:
这是一个片段—— 列表已预订 = [];有 5 个元素,有 5 个键和值。这是仅预订的房间列表。
列表组合列表 = [];有 10 个元素,有 42 个键和值。这是所有房间的主列表。
并非 combinedList 的所有元素都在 booked 中。但是 booked 的所有元素都在 combinedList 中。这就是它变得棘手的地方。
我正在尝试将 List booked = [] 的内容添加到 List combinedList = [] 中,以便我可以使用 List booked = [] 中的 EndDate 和 checkOutTime。
当我使用以下方法时,List fetchRooms 的长度是 5 而不是 10。
知道我怎样才能达到这个结果吗?
我试了这个代码:
if (booked.isNotEmpty) {
combinedList.forEach((e) {
booked.forEach((ele) {
if (e["roomNumber"] == ele["roomNumber"]) {
// if (e["id"] == ele["id"]) {
fetchRooms.add(getExtendedlist(
e["buildingEntranceUrl"].toString(),
e["roomUrl"].toString(),
e["description"].toString(),
e["address"].toString(),
e["Name"].toString(),
e["averageRating"].toString(),
e["roomNumber"].toString(),
e["endDateAndTime"].toString(),
e["startDateAndTime"].toString(),
e["Monthly"].toString(),
e["RegisteredDate"].toString(),
e["accessType"].toString(),
e["geopointlat"],
e["geopointlng"],
e["id"],
ele["EndDate"].toString(),
ele["checkOutTime"].toString(),
));
}
});
});
}
但它只给了我预订的长度。我希望在 id 相同的地方添加字段 ele[“EndDate”].toString() 和 ele[“checkOutTime”].toString() 的 combinedList 长度,并在 ID 不相同的地方添加空白。
答: 暂无答案
评论