Ich habe zwei ICollection
s von denen ich gerne die Union nehmen würde. Momentan mache ich das mit einer foreach-Schleife, aber das fühlt sich verbal und abscheulich an. Was ist das C# -Aquivalent von Javas addAll()
?C#: Union von zwei ICollections? (Entsprechung von Java addAll())
Beispiel für dieses Problem:
ICollection<IDictionary<string, string>> result = new HashSet<IDictionary<string, string>>();
// ...
ICollection<IDictionary<string, string>> fromSubTree = GetAllTypeWithin(elementName, element);
foreach(IDictionary<string, string> dict in fromSubTree) { // hacky
result.Add(dict);
}
// result is now the union of the two sets
Guter Aufruf auf der ToList() –
Leider funktioniert die Union, als ob der Ursprung und das Schicksal waren Sätze, und es überblickt wiederholte Elemente, daher ist dies nicht das gleiche wie tun und Java 'Collection.addAll()' wo die Sammlung Die Implementierung kann durchaus eine Liste sein, in der wiederholte Elemente gültig sind. –
@edalorzo In diesem Fall können Sie stattdessen Enumerable.Concat verwenden: http://msdn.microsoft.com/en-us/library/bb302894 –