C#将两个list合并为一个新的list
时间: 2024-09-13 16:15:20 浏览: 13
在C#中,你可以使用`Concat()`、`Union()`、`Concat() + ToList()`或者`Enumerable.Concat()`方法将两个List合成为一个新的List。以下是几种常见的方法:
1. **使用Concat()和ToList():**
```csharp
List<int> list1 = new List<int>{1, 2, 3};
List<int> list2 = new List<int>{4, 5, 6};
List<int> mergedList = list1.Concat(list2).ToList();
```
2. **使用Enumerable.Concat():**
```csharp
List<int> mergedList = Enumerable.Concat(list1, list2).ToList();
```
3. **使用Union():** 如果你想保留每个列表中的唯一元素,可以使用`Union()`。
```csharp
List<int> mergedList = list1.Union(list2).ToList();
```
4. **Linq方法链:**
```csharp
List<int> mergedList = list1.AddRange(list2).ToList(); // 这里假设list1有一个AddRange方法用于添加列表
```
每种方法的选择取决于你的具体需求,如是否需要去重,以及对性能的要求。
相关问题
c#两个list合并成一个list
你可以使用`List.AddRange()`方法将一个List中的元素添加到另一个List中,从而将两个List合并成一个List。下面是一个简单的示例代码:
```csharp
List<int> list1 = new List<int>() { 1, 2, 3 };
List<int> list2 = new List<int>() { 4, 5, 6 };
list1.AddRange(list2);
foreach (int num in list1)
{
Console.WriteLine(num);
}
```
输出结果为:
```
1
2
3
4
5
6
```
在这个示例代码中,我们首先创建了两个List:`list1`和`list2`。然后,我们调用`list1.AddRange(list2)`方法将`list2`中的元素添加到`list1`中。最后,我们使用`foreach`循环遍历`list1`中的所有元素,并将它们打印到控制台上。
C# 将两个不一样list 合并成一个
你可以使用 LINQ 中的 `Concat()` 方法将两个不同的 List 合并成一个,以下是示例代码:
```csharp
List<int> list1 = new List<int>() { 1, 2, 3 };
List<int> list2 = new List<int>() { 4, 5, 6 };
List<int> mergedList = list1.Concat(list2).ToList();
```
这将 `list1` 和 `list2` 合并成一个新的 List `mergedList`,其中包含所有元素。