我有使用数组的代码,不幸的是,我无法更改它们的类型。如果可以的话,我会使用 ArrayLists 或类似的东西来做我需要做的事情,但我不能。基本上,我正在寻找从静态数组中添加和删除对象的最佳方法。为了动态地向数组中添加一个项目,我必须创建一个比旧数组大一个元素的新数组,将旧数组中的项目复制到新数组中,然后添加新项目。像这样的东西......
public partial class dataStruct
{
private myObject[] myStaticArray;
};
private void AddItemToMyArray()
{
int oldLength = dataStruct.myStaticArray.Length;
myObject[] newMyObjectArray = new myObject[oldLength + 1];
for (int i = 0; i < oldLength; i++)
newMyObjectArray [i] = dataStruct.myStaticArray[i];
dataStruct.myStaticArray[oldLength] = new myObject();
dataStruct.myStaticArray = newMyObjectArray;
}
为了删除一个项目,我做同样的事情,只是我创建了一个小一个项目的新数组。这感觉真的效率低下。任何人都可以提出更好的方法,如果有的话?或任何其他想法?
提前感谢您的所有帮助!