Anhängen an Array in C#

Muhammad Maisam Abbas 16 Februar 2024
  1. Größenänderung eines Arrays mit Listen in C#
  2. Größenänderung eines Arrays mit der Methode Array.Resize() in C#
Anhängen an Array in C#

In diesem Lernprogramm werden Methoden zum Anhängen von Elementen an ein Array in C# vorgestellt.

Größenänderung eines Arrays mit Listen in C#

Leider können wir die Größe eines Arrays standardmäßig nicht dynamisch ändern. Wenn wir ein Array haben und mehr Werte an dasselbe Array anhängen möchten, müssen wir uns auf einige benutzerdefinierte Ansätze verlassen, um die Größe des Arrays zu ändern. Wir können die Größe eines Arrays ändern, indem wir zuerst das Array mit der Funktion ToList() in C# in eine Liste konvertieren. Wir können dann der Liste mit der Funktion [List.Add() weitere Werte hinzufügen und die Liste mit der Funktion ToArray() in C# wieder in ein Array konvertieren. Das folgende Codebeispiel zeigt uns, wie wir die Größe eines Arrays mithilfe von Listen in C# ändern können.

using System;
using System.Collections.Generic;
using System.Linq;

namespace Resize_Array {
  class Program {
    static void method1() {
      string[] arr = new string[] { "Hi" };
      List<string> ls = arr.ToList();
      ls.Add("Hello");
      ls.Add("World");
      arr = ls.ToArray();
      foreach (var e in arr) {
        Console.WriteLine(e);
      }
    }
    static void Main(string[] args) {
      method1();
    }
  }
}

Ausgabe:

Hi
Hello
World

Wir haben das Array arr mit der Funktion arr.ToList() in die Liste ls konvertiert. Wir haben dem ls neue Elemente hinzugefügt und es mit der Funktion ls.ToArray() in C# wieder in ein Array konvertiert.

Größenänderung eines Arrays mit der Methode Array.Resize() in C#

Wir können auch die Methode Array.Resize() verwenden, um dasselbe Ziel in C# zu erreichen. Die Methode Array.Resize() verwendet den Zeiger auf ein Array als Parameter und ändert die Größe dieses Arrays auf eine angegebene Zahl. Das folgende Codebeispiel zeigt uns, wie wir die Größe eines Arrays mit der Funktion Array.Resize() in C# ändern können.

using System;
using System.Collections.Generic;

namespace Resize_Array {
  class Program {
    static void method2() {
      string[] arr = new string[] { "Hi" };

      Array.Resize(ref arr, 3);
      arr[1] = "Hello";
      arr[2] = "World";
      foreach (var e in arr) {
        Console.WriteLine(e);
      }
    }
    static void Main(string[] args) {
      method2();
    }
  }
}

Ausgabe:

Hi
Hello
World

Wir haben die Größe des Arrays arr mit der Methode Array.Resize() in C# geändert. Wir haben den Verweis auf arr und die gewünschte Größe von arr in den Parametern der Methode Array.Resize() übergeben. Wir haben neue Elemente an das Array arr angehängt und dem Benutzer das Array angezeigt.

Beide oben diskutierten Methoden können verwendet werden, um Elemente an ein Array anzuhängen. Für die dynamische Speicherzuweisung sollte jedoch die Listendatenstruktur anstelle der Array-Datenstruktur verwendet werden.

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

Verwandter Artikel - Csharp Array