C# - 2 つの List を結合する

List を結合するには AddRange メソッドを使用します。

List の結合方法

リストオブジェクト1.AddRange(リストオブジェクト2);
サンプルコード
using System.Collections.Generic;

var list1 = new List<int>() { 1, 2, 3 };
var list2 = new List<int>() { 4, 5, 6 };

// list1 の末尾に list2 を追加
list1.AddRange(list2);

// 結果表示
System.Console.WriteLine("結果");
foreach (var value in list1)
{
    System.Console.WriteLine(value);
}

2 つの List を結合した、新しい List を作成する

リストの内容を変更したくない場合は リストをコピー後に AddRange を行います。
リストAB = new List<データ型>(リストA);
リストAB.AddRange(リストB);

サンプルコード

using System.Collections.Generic;

var listA = new List<int>() { 1, 2, 3 };
var listB = new List<int>() { 4, 5, 6 };

// listA をコピー
var listAB = new List<int>(listA);

// listAB の末尾に listB を追加
listAB.AddRange(listB);

// 結果表示("リストA")
System.Console.WriteLine("リストA");
foreach (var value in listA)
{
    System.Console.WriteLine(value);
}

// 結果表示("リストB")
System.Console.WriteLine("リストB");
foreach (var value in listB)
{
    System.Console.WriteLine(value);
}

// 結果表示("リストA + B")
System.Console.WriteLine("リストA + B");
foreach (var value in listAB)
{
    System.Console.WriteLine(value);
}
サンプルコードの実行結果 サンプルコードの実行結果

検証環境

関連ページ