扩展对象的arraylist是否会创建一个新对象?

时间:2019-06-18 20:42:43

标签: c# oop object arraylist

假设我们有一个Employe类型的数组列表,将其长度扩展1会在列表中创建一个新对象吗?

else语句中的代码正确吗?推荐吗?

    public void ModifierEmp(int c)
    {
        for(int i = 0; i < Ann.Count; i++)
        {
            if(Ann[i].Code == c)
            {
                Ann[i].saisie();
            } else
            {
                i = Ann.Count + 1; //expanding arraylist ann 
                Ann[i].saisie(); //saisie a method for the user to input Employe infos
            }
        }
    }

https://imgur.com/VfFHDKu“代码段”

1 个答案:

答案 0 :(得分:0)

i = Ann.Count + 1;

上面的代码不会扩展列表:它只是将索引变量(i)设置为一个新值。

如果要扩大列表的大小,则必须告诉它要在创建的新空间中放入哪个对象。例如:

Ann.Add(anotherItem);

当然,这使您能够决定是添加现有的 项目,创建新的项目(例如Ann.Add(new Something() { Code = c }),还是添加null值进入列表(通常不是一个好主意)。