Agregar a el array en C#

Muhammad Maisam Abbas 16 febrero 2024
  1. Cambiar el tamaño de un array con listas en C#
  2. Cambiar el tamaño de un array con el método Array.Resize() en C#
Agregar a el array en C#

Este tutorial presentará métodos para agregar elementos a un array en C#.

Cambiar el tamaño de un array con listas en C#

Desafortunadamente, de forma predeterminada, no podemos cambiar dinámicamente el tamaño de un array. Si tenemos un array y queremos agregar más valores a la misma matriz, tenemos que confiar en algunos enfoques definidos por el usuario para cambiar el tamaño del array. Podemos cambiar el tamaño de un array convirtiendo primero el array en una lista con la función ToList() en C#. Entonces podemos agregar más valores a la lista con la función List.Add() y convertir la lista de nuevo a un array usando la función ToArray() en C#. El siguiente ejemplo de código nos muestra cómo podemos cambiar el tamaño de un array usando listas en C#.

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();
    }
  }
}

Producción :

Hi
Hello
World

Convertimos el array arr a la lista ls con la función arr.ToList(). Agregamos nuevos elementos a ls y lo convertimos de nuevo a un array con la función ls.ToArray() en C#.

Cambiar el tamaño de un array con el método Array.Resize() en C#

También podemos usar el método Array.Resize() para lograr el mismo objetivo en C#. El método Array.Resize() toma el puntero a un array como parámetro y cambia el tamaño de esa matriz a un número específico. El siguiente ejemplo de código nos muestra cómo podemos cambiar el tamaño de un array con la función Array.Resize() en C#.

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();
    }
  }
}

Producción :

Hi
Hello
World

Cambiamos el tamaño del array arr con el método Array.Resize() en C#. Pasamos la referencia al arr y el tamaño deseado del arr en los parámetros del método Array.Resize(). Agregamos nuevos elementos a el array arr y mostramos el array al usuario.

Ambos métodos discutidos anteriormente se pueden usar para agregar elementos a un array. Pero para la asignación de memoria dinámica, se debe utilizar la estructura de datos de lista en lugar de la estructura de datos de array.

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

Artículo relacionado - Csharp Array