[笔记] 删除 Array 数组中指定的元素
前言
此文章纪录如何移除 Array 数组中指定的元素!
想要移除 Array 数组中某项特定的元素,但发现因 Array 类中,没有类似 Remove 的方法可使用 XD
如下图所示:
查了一下Array 成员,发现公用方法中并没有 Remove 方法,但在.NET Framework 2.0 中 Array 类有实做 IList、ICollection 和 IEnumerable 泛型界面
使用 LINQ
int[] myNumbers = { 1, 30, 26, 53, 97, };
int myRemoveNum = 53;
myNumbers = myNumbers.Where(val => val != myRemoveNum).ToArray();
.NET Framework 3.5
namespace:System.Linq
透过 Enumerable.Where
不使用 LINQ
int[] myNumbers = { 1, 30, 26, 53, 97, };
int myRemoveNum = 53;
myNumbers = Array.FindAll(myNumbers, val => val != myRemoveNum).ToArray();
.NET Framework 2.0
透过 Array.FindAll 泛型方法取得符合条件的所有元素。
以上情况都是假设元素是不重复的情况下使用,但如果数组中有可能元素重复的话
可以透过 Array.IndexOf 方法找到第一个符合项目的数据,详细可以参考 这里。
参考
How to delete an element from an array in C#
Array 成员
Enumerable.Where
Array.FindAll