Anuncios

Bienvenidos sean a este post, hoy veremos un metodo para los arrays.

Anuncios

Este metodo nos permite hacer algo que contradice a lo que siempre explicamos sobre los arrays como es poder cambiar su tamaño, veamos su sintaxis:

Array.Resize(ref array, tamaño);
Anuncios

El metodo es llamado siempre a traves de la clase, el primer argumento sera el array que modificaremos y llevara la palabra ref para indicar que trabajaremos con la direccion de memoria del array y en tamaño pasaremos el nuevo tamaño del array, ya sea para agrandarlo o reducirlo, para entenderlo mejor vamos a trabajar con un ejemplo y para ello crearemos un nuevo archivo con el nombre de tamano.cs y le agregaremos el siguiente codigo:

tamano.cs

using System;

public class Program
{
	static int Main()
	{
		int[] arr=new int[2];
		arr[0] = 10;
		arr[1] = 20;

		Console.WriteLine("Array Original:");
		mostrarArray(arr);

		Array.Resize(ref arr, 5);

		Console.WriteLine("Array Agrandado:");
		mostrarArray(arr);

		Array.Resize(ref arr, 1);

		Console.WriteLine("Array Reducido:");
		mostrarArray(arr);

		return 0;			
	}

	static void mostrarArray(int[] a)
	{
		for(int i=0; i < a.Length; i++)
			Console.WriteLine("Pos #{0}: {1}", i, a[i]);
	}
}
Anuncios
Anuncios

Antes de hablar sobre el codigo en si vamos a ver primero como es la funcion que usaremos en el Main, en este caso sera una funcion que recibira un array y por medio de este mostraremos el contenido del mismo, ya veremos para que usaremos esta funcion, yendo al Main primero definiremos un array con dos posiciones y le agregaremos dos valores, indicaremos que es el array original y mostraremos todos sus valores, lo siguiente sera utilizar el metodo para modificar el tamaño, observen como pasamos el array por lo comentado anteriormente y el nuevo tamaño, indicamos que agrandamos el array y mostramos los nuevos valores, volvemos a repetir el proceso pero esta vez reduciendo su tamaño a un valor inferior al original, para finalmente mostrar el nuevo cambio, con todo esto comentado veamos como es su salida:

C:\Users\tinchicus>tamano.exe
Array Original:
Pos #0: 10
Pos #1: 20
Array Agrandado:
Pos #0: 10
Pos #1: 20
Pos #2: 0
Pos #3: 0
Pos #4: 0
Array Reducido:
Pos #0: 10

C:\Users\tinchicus>
Anuncios

Como pueden ver es una herramienta muy util especialmente para contradecir lo que se dice sobre los arrays, que no son dinamicos y no se le puede modificar su tamaño.

Anuncios

En resumen, hoy hemos visto Resize, que es, para que sirve, como se puede utilizar, un ejemplo practico para verlo en accion, espero les haya sido de utilidad sigueme en tumblr, Twitter o Facebook para recibir una notificacion cada vez que subo un nuevo post en este blog, nos vemos en el proximo post.

Anuncios
pp258

Donación

Es para mantenimento del sitio, gracias!

$1.50

Anuncio publicitario