Array.Resize(T[], Int32) Method is used to resize the number of elements present in the array. Or in other words, this method is used to change the number of elements of a one-dimensional array to the specified new size. It resizes the only 1-D array, not multidimensional array.
Syntax:
public static void Resize<T> (ref T[] array, int newSize);
Parameters:
array: It is a one-dimensional, zero-based array to resize, or null to create a new array with the specified size.
newsize: It is the size of the new array.
Exception:If the value of nsize is less than zero, then this method will give ArgumentOutOfRangeException.
Note: This method is an O(n) operation, where n is new size.
Below given are some examples to understand the implementation in a better way:
Example 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);
}
}
} |
Original Array: C# Java C++ Python HTML CSS JavaScript Length of myarray: 7 New array is less than myarray: C# Java C++ Python
Example 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);
}
} |
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
Reference: https://docs.microsoft.com/en-us/dotnet/api/system.array.resize?view=netcore-2.1