Boosting C# Array -Verkettung Aufführung: Eine überlegene Alternative zu concat
c#'s concat
Methode liefert eine einfache Lösung zum Beitritt zu Arrays. Seine Leistung kann jedoch beim Umgang mit großen Arrays suboptimal sein. Betrachten Sie für eine erheblich verbesserte Effizienz der Array -Verkettung diese Alternative:
int[] x = new int[] { 1, 2, 3 };
int[] y = new int[] { 4, 5 };
int[] z = new int[x.Length y.Length];
Array.Copy(x, z, x.Length);
Array.Copy(y, 0, z, x.Length, y.Length);
Debug.Assert(z.SequenceEqual(new int[] { 1, 2, 3, 4, 5 }));
Diese Methode verteilt direkt einen neuen Array z von ausreichender Größe, um beide
x und
y zu halten. Es nutzt dann
array.copy , um die Elemente von
x und
y in
Z effizient zu übertragen. Dies vermeidet die Erstellung von Zwischenarrays, was zu einer schnelleren Ausführung führt, insbesondere bei größeren Datensätzen.
Wichtige Überlegung: wobei concat für kleinere Arrays geeignet bleibt, bei denen die Leistung nicht kritisch ist, bietet der obige Ansatz einen erheblichen Leistungsvorteil für Szenarien mit großen Arrays.
.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3