如何在<Map> Flutter 中同一索引位置替换列表中的对象



假设我有一个对象列表,如下所示:

List<Map<String, dynamic>> list = [{'a': 'red', 'b': 'blue'}, {'a': 'yellow', 'b': 'orange'}, {'a': 'green', 'b': 'purple'}];

假设每个a和b值都是唯一的,我如何找到a === yellow所在的对象,并将该对象替换为原始对象列表中相同索引位置的新对象(如{'a': 'brown', 'b': 'white'})?

EDIT我忘了提一下,我需要先删除对象来处理数据,然后将其添加回同一位置。

试试这个:

var item = list.firstWhere((i) => i["a"] == 'yellow'); // getting the item
var index = list.indexOf(item); // Item index
list[index] = {'a': 'brown', 'b': 'white'}; // replace item at the index

相关内容

  • 没有找到相关文章