2013-10-22 49 views

回答

4

只是做一個foreach語句來訪問每個單獨的列表。然後撥打clear就可以了。

foreach (var item in list) 
    item.Clear() 
0
list.ForEach(l => l.Clear()); 

使用list.Clear()將清除外列表。上面的代碼將清除你的內部列表,給你留下一個空列表清單

+2

爲什麼不使用正常的foreach? [foreach vs ForEach](http://blogs.msdn.com/b/ericlippert/archive/2009/05/18/foreach-vs-foreach.aspx) –

+0

同樣的結果,只是使用LINQ,我更喜歡它 – Jonesopolis

+3

@ Jonesy不是LINQ,這是'List '(或另一個類,或者你自己的擴展方法)上的一種方法。它使用lambdas,但它不是[LINQ](http://msdn.microsoft.com/zh-cn/library/system.linq.aspx)庫的一部分。由於法比奧文章中的原因,我更喜歡'foreach',而不是'ForEach'。 –

1

你需要在每個內部列表中手動清除值。你可以做到這一點與任何環路,這裏是與foreachfor一個例子:

foreach(List<int> innerItem in list) 
{ 
    innerItem.Clear(); 
} 



for(int i = 0; i < list.Count; i++) 
{ 
    list[i].Clear(); 
} 

這樣做只是list.Clear()刪除每個項目每一個內部列表。