2013-05-06 69 views
-2

我有2個清單發出追加兩個列表

Class A{ 
    int rollno{get;set;} 
    string Name {get;set;} 
} 

List<A> a=new List<A>(); 
List<A> b=new List<A>(); 

大量的研究後,我很顯着的附加列表B列出一個。感謝您的幫助。

+0

你的意思是你想,然後合併成一個?另外,B如何定義?它是否來自A? – antonijn 2013-05-06 09:34:49

+0

@antonijn先生喜歡如果列表a有1,2,3和列表b有3 4 5 5.然後合併後我想要一個列表包含1 2 3 4 5. – Abhishek 2013-05-06 09:38:58

+0

'B'是未定義的。那麼我們應該如何告訴你如何從'B'獲得'A'呢? – 2013-05-06 09:40:03

回答

1
List<A> finalList = new List<A>(a.Count + b.Count); 
finalList.AddRange(a); 
finalList.AddRange(b); 

此外,如果你正在使用LINQ,你可以使用Concat方法,通過@TimSchmelter的建議。我之前沒有發佈此方法,因爲AddRange方法更快。

List<A> finalList = a.Concat(b).ToList(); 

請注意,您甚至可能不需要ToList。如果你不打算要改變連接後(刪除/添加)的數據,那麼你不妨將它存儲在IEnumberable<A>

var finalCollection = a.Concat(b);