📅  最后修改于: 2023-12-03 15:08:15.753000             🧑  作者: Mango
在编程中,经常会遇到需要从数组中删除一个元素的情况。本文将介绍如何在C#中删除数组中的一个元素,并提供几种常见的删除方法。
可以使用Array.Copy()方法来复制原始数组,并跳过待删除元素,然后将新数组返回给目标数组。这个方法可以使用多种方式,具体取决于要删除的元素的位置和数量。
public static T[] RemoveAt<T>(T[] array, int index)
{
T[] newArray = new T[array.Length - 1];
if (index > 0)
Array.Copy(array, 0, newArray, 0, index);
if (index < array.Length - 1)
Array.Copy(array, index + 1, newArray, index, array.Length - index - 1);
return newArray;
}
**注意:**请注意,这种方法不会修改原始数组,而是创建一个新数组。如果需要修改原始数组,请使用源数组上的方法。
List
List<int> list = new List<int>(new[] { 1, 2, 3 });
list.Remove(2);
这种方法直接修改了原始列表,而不需要创建一个新的数组。
可以使用LINQ的Where()方法过滤要保留的元素,并将其转换回数组。
int[] array = { 1, 2, 3 };
array = array.Where(val => val != 2).ToArray();
这种方法使用了一个lambda表达式,用于过滤要保留的元素,并返回一个新的数组。
这些是C#中删除数组元素的常见方法。根据您的具体需求选择合适的方法,并按照以上代码片段删除您的目标数组元素。