2013-10-20 108 views
-2

如何刪除集合中的重複項?例如:刪除集合中的重複項

List<double> somelist=new List<double>{2, 2, 3}; 

應該使用什麼LINQ方法?

請儘量簡化。

+1

只需使用['HashSet'](http://msdn.microsoft.com/zh-cn/library/bb359438.aspx),您將不會有任何重複內容。 –

+0

您是否試圖在沒有重複項目的情況下獲得新的收藏集,或者您是否希望沒有dups的同一個收藏集? – Gabe

回答

6

Enumerable.Distinct可能是你在找什麼。

var somelist = new List<double>{2, 2, 3}.Distinct(); 

// somelist now contains 2, 3 
+0

它只是擺脫重複? – stackptr

+3

@EdwardKarak你應該參考['Enumerable.Distinct']的文檔(http://msdn.microsoft.com/en-us/library/system.linq.enumerable.distinct.aspx) –

+0

只要你的' T'' IEnumerable '實現'GetHashCode'和'Equals'方法屬性'Enumerable.Distinct'會正常工作。 – MarcinJuraszek

2

我會建議使用的HashSet<double>代替List<double>

+0

爲什麼?這也不能真正回答這個問題 – DarcyThomas