Heim >Backend-Entwicklung >C++ >Wie kann ich Elemente zu einer IEnumerable-Sammlung hinzufügen?

Wie kann ich Elemente zu einer IEnumerable-Sammlung hinzufügen?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-24 15:58:14443Durchsuche

How Can I Add Items to an IEnumerable Collection?

Elemente zu IEnumerable hinzufügen Sammlungen

Aufzählbare Sammlungen, dargestellt durch das IEnumerable Schnittstelle bieten eine Möglichkeit, eine Folge von Werten zu durchlaufen, ohne direkten Zugriff auf die Sammlung selbst zu haben. Im Gegensatz zu List, das das Ändern und Hinzufügen von Elementen ermöglicht, ist IEnumerable Sammlungen verfügen nicht von Natur aus über eine solche Funktionalität.

Betrachten Sie das folgende Beispiel:

IEnumerable<string> items = new string[] { "msg" };
items.ToList().Add("msg2");

Nach der Ausführung dieses Codes bleibt die Anzahl der Elemente in der Sammlung bei eins. Dies liegt daran, dass IEnumerable stellt keine veränderbare Sammlung dar. Es bietet lediglich eine Möglichkeit, nacheinander auf Elemente zuzugreifen.

Um das gewünschte Verhalten beim Hinzufügen von Elementen zu einem IEnumerable Sammlung müssen Sie einen Ansatz verwenden, der ein neues IEnumerable erstellt. Objekt mit dem angehängten Element enthalten. Eine Möglichkeit, dies zu erreichen, ist die Enumerable.Concat-Methode:

items = items.Concat(new[] { "foo" });

Diese Codezeile erstellt ein neues IEnumerable Objekt, das alle Elemente der ursprünglichen Items-Sammlung enthält, gefolgt vom zusätzlichen Element „foo“. Das neue Objekt spiegelt alle an der ursprünglichen Sammlung vorgenommenen Änderungen wider und stellt so sicher, dass Sie immer über eine aktuelle Darstellung der Daten verfügen.

Es ist wichtig zu beachten, dass dieser Ansatz das ursprüngliche Elementarray nicht ändert. Stattdessen wird ein neues Sammlungsobjekt erstellt, das eine aktualisierte Ansicht der Daten bereitstellt.

Das obige ist der detaillierte Inhalt vonWie kann ich Elemente zu einer IEnumerable-Sammlung hinzufügen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn