如何使用c#删除数组列表中的数组
本文关键字:数组 列表 删除 何使用 | 更新日期: 2023-09-27 18:03:35
如何从arraylist中删除数组
class Program
{
static void Main(string[] args)
{
ArrayList[] arr = new ArrayList[3000];
int capacityForList = 2;
int i = 0;
int j;
int k;
arr[i] = new ArrayList();
arr[i].Add("A");
i++;
arr[i] = new ArrayList();
arr[i].Add("B");
i++;
arr[i] = new ArrayList();
arr[i].Add("C");
i++;
arr[i] = new ArrayList();
arr[i].Add("D");
i++;
arr[i] = new ArrayList();
arr[i].Add("E");
i++;
}
}
删除arr[3]
谢谢
您不能像从List<T>
或ArrayList
中那样从数组中"删除"元素-您只能替换元素。不可否认,你可以使用Array.Copy
复制数组的整个块,但它有点难看。
一个更好的解决方案是将代码更改为使用List<List<string>>
:
List<List<string>> list = new List<List<string>>
{
new List<string> { "A" },
new List<string> { "B" },
new List<string> { "C" },
new List<string> { "D" },
new List<string> { "E" }
};
list.RemoveAt(3); // Removes the list containing "D"
然而,每当我看到代码使用集合的集合时,我就会紧张……这里的是什么意思?你是否可以将"内部"字符串列表更改为更有意义的内容?如果你能给我们更详细的信息,那就太有帮助了。
哦,尽量避免使用非泛型集合,如ArrayList
。类型安全很重要:)
最简单的做法是使用List<ArrayList>
代替ArrayList[]
,您可以简单地调用arr.RemoveAt(3)