【发布时间】:2011-12-28 12:38:26
【问题描述】:
我会直奔主题。我想以统一的差异移动数组中的项目,假设我有这个。
string[] fruits = { "Banana", "Apple", "Watermelon", "Pear", "Mango" };
例如,假设我想删除“Apple”,所以我会这样做。
fruits[1] = "";
现在剩下的就是:
{ "Banana", "", "Watermelon", "Pear", "Mango" }
我如何真正地删除 Apple 部分并仅获取:
{ "Banana", "Watermelon", "Pear", "Mango" }
请注意,从“西瓜”到数组末尾的所有项目的索引向后移动 1。有什么想法吗?
【问题讨论】:
-
@Morten:请永远不要建议使用像 ArrayList 这样的非通用容器。请改用通用
List<T>! -
问题是,这是一个团队合作项目。我的朋友们开始了这个项目并使用了数组。我不能只是重新启动项目来将应用程序更改为使用列表。
-
@MortenAnderson 真的没有必要每次都使用 ArrayList(除非你使用的是 .NET 1)。
-
@Naufal:其实你可以使用
T[] arr = list.ToArray();。此外,当您需要灵活的容器时,请使用List<T>。如果您需要固定大小,请使用T[]。