Heim > Backend-Entwicklung > C++ > Was ist der effizienteste Weg, Arrays in C# zu verketten?

Was ist der effizienteste Weg, Arrays in C# zu verketten?

Mary-Kate Olsen
Freigeben: 2025-01-17 07:02:09
Original
429 Leute haben es durchsucht

What's the Most Efficient Way to Concatenate Arrays in C#?

Effiziente Verbindungsmethode des C#-Arrays

Das Verketten von Arrays ist eine häufige Aufgabe in der Programmierung, bei der die Elemente von zwei oder mehr Arrays zu einem neuen Array kombiniert werden. In C# bietet die Concat-Methode eine praktische Möglichkeit, Arrays zu verketten, ist jedoch möglicherweise nicht die effizienteste Lösung für große Arrays.

Eine alternative Methode

Um Arrays effizienter zu verketten, besteht eine Alternative darin, die Elemente jedes Arrays manuell in ein neues Array mit geeigneter Größe zu kopieren:

<code class="language-csharp">var z = new int[x.Length + y.Length];
x.CopyTo(z, 0);
y.CopyTo(z, x.Length);</code>
Nach dem Login kopieren

Diese Methode erstellt ein neues Array mit dem Namen z mit einer Größe, die der Summe der Längen von x und y entspricht. Kopieren Sie dann die Elemente von x beginnend mit Index 0 nach z und dann die Elemente von y beginnend mit Index x.Length (d. h. der Position nach dem letzten Element von x) nach zMitte.

Anwendungsbeispiel

Betrachten Sie das folgende Beispiel:

<code class="language-csharp">int[] x = { 1, 2, 3 };
int[] y = { 4, 5 };

var z = new int[x.Length + y.Length];
x.CopyTo(z, 0);
y.CopyTo(z, x.Length);

Debug.Assert(z.SequenceEqual(new int[] { 1, 2, 3, 4, 5 }));</code>
Nach dem Login kopieren

Dieser Code erstellt ein neues Array x, das alle Elemente von y und z enthält, und die Behauptung überprüft, ob die Elemente korrekt verbunden sind.

Leistungsvergleich

Benchmarks zeigen, dass diese Alternative für große Arrays effizienter ist als der Concat Ansatz. Mit zunehmender Arraygröße wird der Leistungsunterschied deutlicher.

Fazit

Während die Concat-Methode eine übersichtliche Möglichkeit zur Verkettung von Arrays bietet, ist sie möglicherweise nicht die effizienteste Lösung für große Arrays. Für solche Szenarien bietet das manuelle Kopieren von Arrays eine schnellere und effizientere Alternative.

Das obige ist der detaillierte Inhalt vonWas ist der effizienteste Weg, Arrays in C# zu verketten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage