2013-03-07 21 views

cevap

308

HashSet için ad UnionWith.

Bu, HashSet'in çalıştığı farklı yolu belirtmektir. Koleksiyonlarda rastgele bir dizi öğe "Güvenli" ekle "yapamazsınız, bazı öğeler doğal olarak buharlaşabilir.

Ben, ancak, çok IEnumerable için bir aşırı yük :) var UnionWith "Başka HashSet birleşiyor" sonra adını alır düşünüyorum Bu bir yoludur

+5

Imho, 'HashSet' (ve "ISet") matematiksel olarak belirlenmiş bir terim ile oluşturuldu. 'UnionWith' daha yakın bir dönemdi. Matematiksel olarak “Çıkar” olarak adlandırılan “Hariç” dışında. –

2

:

public static class Extensions 
{ 
    public static bool AddRange<T>(this HashSet<T> @this, IEnumerable<T> items) 
    { 
     bool allAdded = true; 
     foreach (T item in items) 
     { 
      allAdded &= @this.Add(item); 
     } 
     return allAdded; 
    } 
} 
+0

@quetzalcoatl, iade bildirimini kaçırdı ... düzenledi. – RoadieRich

+0

Düzenlemeyi daha yeni farkettim :) Just FYI: '': 'operatörünü kullanmak yerine, basit' eklendi & = @ this.Add (item) 'yeterli ve muhtemelen daha okunabilir olurdu. Ama bu elbette sadece kozmetik. – quetzalcoatl

+0

@quetzalcoatl Bunu sormak üzereydim, sabah benim için çok erken. – RoadieRich

İlgili konular