如何在从列表中删除中间元素时重置对象int值
本文关键字:对象 int 元素 中间 列表 删除 | 更新日期: 2023-09-27 18:29:24
我得到了一个包含对象的列表,这些对象具有保存元素顺序的属性"serie":
---------------------------------
| **Element** |**Serie** |
---------------------------------
| Object1 | 1 |
---------------------------------
| Object2 | 2 |
---------------------------------
| Object3 | 3 |
---------------------------------
如果我去掉元素2,我的对象3的矩阵级数变为2,我怎么能得到呢?我的意思是,在去掉元素后,重置所有元素的级数值。
任何帮助都将不胜感激。
您必须手动循环列表并修改对象的属性,将每个项上的值设置为等于项的索引。
如果你知道被删除对象的索引,那么你可以从那一点开始循环,因为之前的对象不会发生任何变化。
怎么样:
public class Object
{
public int Serie;
}
然后:
var list = new List<Object>();
list.Add(new Object { Serie = 1 });
list.Add(new Object { Serie = 2 });
list.Add(new Object { Serie = 3 });
list.RemoveAt(1);
int i = 1;
foreach (Object obj in list)
{
obj.Serie = i;
i++;
}