2013-04-16 43 views

回答

0
var temp = new List<string>(); 
foreach(var item in remoteFiles){ 
    if(localfiles.Contains(item) == false){ 
    temp.Add(item); 
    } 
} 

//臨時現在包含在remoteFiles不存在於localfiles

+2

取決於本地文件的大小,您可能通過創建字典fr獲得更多性能在列表中,所以'查找'將會快得多(即在列表中使用.Contains比在字典中查找鍵要慢),但是會產生創建字典的額外開銷..因此,對於所有內容......'它取決於';-) ...(就像lazyberezovsky建議:-)) – stooboo

4
Dictionary<string, bool> files = new Dictionary<string, bool>(); 
foreach (var file in localfiles) 
    if (!files.ContainsKey(file)) 
     files.Add(file, false); 

List<string> result = new List<string>(); 
foreach (var file in remotefiles) 
    if (!files.ContainsKey(file)) 
     result.Add(file); 

Dictionary是查找然後Listefficient如果你在它超過300項的所有項目:

enter image description here

+1

'+ 1'只是爲了花費比OP更多的努力來解決他的問題。 –

+0

但是,建立詞典 – TGH

+0

@SonerGönül表示謝意! –

相關問題