我有这个int
列表,长度为3
这是列表:
List<Tamount> integer= [
amount(amount: 2, id: '34'),
amount(amount: 4, id: '12'),
TotalAmount(amount: 2, id: '54'),
];
我想替换索引2,所以将其替换为4
我已经尝试过了:
integer.isNotEmpty
? integer.remove(integer[1].id)
: null;
integers.insert(1, integer(
id: DateTime.now().toString(),
amount:34,
));
但是它不起作用,由于某种原因,它没有将其从列表中删除,而是添加到了列表中。
答案 0 :(得分:3)
您可以这样做:
integer.isNotEmpty
? integer.removeWhere((item)=>item.amount == 4) //removes the item where the amount is 4
: null;
integers.insert(
1,
amount(
id: DateTime.now().toString(),
amount:34,
));
如果要使用索引删除项目,则可以使用removeAt()方法:
integer.isNotEmpty
? integer.removeAt(1) //removes the item at index 1
: null;
integers.insert(
1,
amount(
id: DateTime.now().toString(),
amount:34,
));
答案 1 :(得分:1)
如果知道要替换的元素的索引,则无需从列表中删除现有元素。您可以按索引分配新元素。
integer[1] = amount(amount: 5, id: 'new_id');