Heim > Backend-Entwicklung > C++ > Wie entferne ich ein Element aus einem C# -Array?

Wie entferne ich ein Element aus einem C# -Array?

DDD
Freigeben: 2025-01-25 02:02:08
Original
775 Leute haben es durchsucht

How to Remove an Element from a C# Array?

Bestimmte Elemente aus einem normalen Array entfernen

Beim Arbeiten mit Arrays in C# müssen Sie möglicherweise bestimmte Elemente aus der Sammlung entfernen. Für gewöhnliche Arrays ist im Gegensatz zur List-Klasse keine RemoveAt()-Methode direkt verfügbar. Daher suchen Entwickler nach alternativen Möglichkeiten, diese Funktionalität zu implementieren.

Lösung:

Um diese Einschränkung zu überwinden, können Sie die RemoveAt()-Methode von List nutzen, indem Sie zunächst ein normales Array in eine Liste konvertieren, den Entfernungsvorgang ausführen und dann die geänderte Liste wieder in ein Array konvertieren.

<code class="language-c#">var foos = new List<foo>(array);
foos.RemoveAt(index);
return foos.ToArray();</code>
Nach dem Login kopieren

Alternative zur Erweiterungsmethode:

Erwägen Sie alternativ die Verwendung einer Erweiterungsmethode, die die RemoveAt()-Funktionalität eines normalen Arrays emuliert:

<code class="language-c#">public static T[] RemoveAt<T>(this T[] source, int index)
{
    T[] dest = new T[source.Length - 1];
    if( index > 0 )
        Array.Copy(source, 0, dest, 0, index);

    if( index < source.Length -1 )
        Array.Copy(source, index + 1, dest, index, source.Length - index - 1);

    return dest;
}</code>
Nach dem Login kopieren

Diese Erweiterungsmethode ermöglicht eine einfachere Entfernung:

<code class="language-c#">Foo[] bar = GetFoos();
bar = bar.RemoveAt(2);</code>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie entferne ich ein Element aus einem C# -Array?. 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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage