c#arraylist去除重复元素
时间: 2023-08-20 19:08:34 浏览: 150
去掉list中的重复对象
在 C# 中,可以使用 `ArrayList` 类来存储一组元素。如果要去除 `ArrayList` 中的重复元素,可以使用以下方法:
1. 使用 `HashSet`:创建一个新的 `HashSet` 对象,并迭代遍历原始的 `ArrayList`,将元素添加到 `HashSet` 中。由于 `HashSet` 不允许重复元素,重复的元素将被自动去除。最后,将 `HashSet` 转换回 `ArrayList` 类型即可。
```csharp
using System.Collections;
using System.Collections.Generic;
ArrayList arrayList = new ArrayList() { 1, 2, 3, 2, 4, 1 };
HashSet<int> hashSet = new HashSet<int>();
foreach (int element in arrayList)
{
hashSet.Add(element);
}
ArrayList uniqueArrayList = new ArrayList(hashSet);
```
2. 使用 LINQ:如果你使用的是 C# 3.0 或更高版本,可以使用 LINQ(Language-Integrated Query)来简化操作。使用 LINQ 的 `Distinct()` 方法可以直接返回一个去除重复元素的新 `ArrayList`。
```csharp
using System.Collections;
using System.Linq;
ArrayList arrayList = new ArrayList() { 1, 2, 3, 2, 4, 1 };
ArrayList uniqueArrayList = new ArrayList(arrayList.Cast<int>().Distinct());
```
上述两种方法都可以帮助你去除 `ArrayList` 中的重复元素。选择其中一种方法即可根据你的需求。
阅读全文