do#| Cómo cambiar el tamaño de una array unidimensional – Part 1

El método Array.Resize(T[], Int32) se usa para cambiar el tamaño de la cantidad de elementos presentes en la array. O, en otras palabras, este método se usa para cambiar el número de elementos de una array unidimensional al nuevo tamaño especificado. Cambia el tamaño de la única array 1-D, no de la array multidimensional.

Sintaxis:

public static void Resize<T> (ref T[] array, int newSize);

Parámetros:

array: es una array unidimensional de base cero para cambiar el tamaño o nulo para crear una nueva array con el tamaño especificado.
newsize: Es el tamaño del nuevo arreglo.

Excepción: si el valor de nsize es menor que cero, este método dará ArgumentOutOfRangeException .

Nota: Este método es una operación O(n), donde n es el nuevo tamaño.

A continuación se dan algunos ejemplos para entender la implementación de una mejor manera:

Ejemplo 1:

// C# program to resize the
// elements of the 1-D array
using System;
  
public class GFG {
      
    // Main method
    static public void Main()
    {
  
        // create and initialize array
        string[] myarray = {"C#", "Java", "C++", "Python",
                             "HTML", "CSS", "JavaScript"};
  
        // Display original array before Resize
        Console.WriteLine("Original Array:");
          
        foreach(string i in myarray)
        {
            Console.WriteLine(i);
        }
  
        int len = myarray.Length;
        Console.WriteLine("Length of myarray: "+len);
        Console.WriteLine();
          
        // Resize the element of myarray and 
        // create a new array. Here new array
        // is smaller than the original array 
        // so, elements are copied from the 
        // myarray to the new array until the
        // new one is filled. The rest of the
        // elements in the old array are ignored
        Array.Resize(ref myarray, len - 3);
  
        Console.WriteLine("New array is less than myarray:");
          
        foreach(string j in myarray)
        {
            Console.WriteLine(j);
        }
          
    }
}
Producción:

Original Array:
C#
Java
C++
Python
HTML
CSS
JavaScript
Length of myarray: 7

New array is less than myarray:
C#
Java
C++
Python

Ejemplo 2:

// C# program to resize the 
// elements of the 1-D array
using System;
  
public class GFG {
      
    // Main method
    static public void Main()
    {
  
        // create and initialize array
        string[] myarray = {"C#", "C++", "Ruby", 
                         "Java", "PHP", "Perl"};
  
        // Display original string before Resize
        Console.WriteLine("Original Array:");
          
        foreach(string i in myarray)
        {
            Console.WriteLine(i);
        }
  
        // Length of old array
        int len = myarray.Length;
        Console.WriteLine("Length of myarray: "+len);
        Console.WriteLine();
          
        // Resize the element of myarray 
        // and create a new array
        // Here new array is greater than
        // original array so, all the element 
        // from myarray is copied to new array
        // and remaining will be null
        Array.Resize(ref myarray, 10);
          
        Console.WriteLine("New array is greater than myarray:");
          
        foreach(string j in myarray)
        {
            Console.WriteLine(j);
        }
          
        // Length of new array
        int len1 = myarray.Length;
        Console.WriteLine("Length of New Array: "+len1);
   
    }
}
Producción:

Original Array:
C#
C++
Ruby
Java
PHP
Perl
Length of myarray: 6

New array is greater than myarray:
C#
C++
Ruby
Java
PHP
Perl




Length of New Array: 10

Referencia: https://docs.microsoft.com/en-us/dotnet/api/system.array.resize?view=netcore-2.1

Publicación traducida automáticamente

Artículo escrito por Kirti_Mangal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *