Código de C sharp - Redimensionar un array

Imágen de perfil

Redimensionar un arraygráfica de visualizaciones


C sharp

Publicado el 30 de Diciembre del 2008 por Xavi
6.306 visualizaciones desde el 30 de Diciembre del 2008. Una media de 21 por semana
Ejemplo, que muestra como redimensionar un array unidimensional, y un array bidimensional.

Versión 1

Publicado el 30 de Diciembre del 2008gráfica de visualizaciones de la versión: Versión 1
6.307 visualizaciones desde el 30 de Diciembre del 2008. Una media de 21 por semana
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
// Main.cs created with MonoDevelop
// User: xavi at 20:06 30/12/2008
//
// La Web del programador
// http://www.lawebdelprogramador.com
//
using System;
 
namespace arrays
{
	class MainClass
	{
		public static void Main(string[] args)
		{
			/***** Redimensionar un Array unidimensional *****/
			//Creamos el array unidimensional
			double[] nameArray1=new double[1] {0};
			Console.WriteLine("length nameArray1: " + nameArray1.Length);
			//Redimensionamos el array
			Array.Resize(ref nameArray1,2);
			Console.WriteLine("length nameArray1 resized: " + nameArray1.Length);
			Console.WriteLine("-------------------");
 
			/***** Redimensionar un Array bidimensional *****/
			//Creamos el array bidimensional
			double[,] nameArray2=new double[2,2];
			Console.WriteLine("length nameArray1: " + nameArray2.Length);
			//Colocamos contenido
			nameArray2[0,0]=10;
			nameArray2[0,1]=20;
			nameArray2[1,0]=30;
			nameArray2[1,1]=40;
			Console.WriteLine("Content nameArray2[0,0]: " + nameArray2[0,0]);
			Console.WriteLine("Content nameArray2[0,1]: " + nameArray2[0,1]);
			Console.WriteLine("Content nameArray2[1,0]: " + nameArray2[1,0]);
			Console.WriteLine("Content nameArray2[1,1]: " + nameArray2[1,1]);
			Console.WriteLine("-------------------");
 
			//Tenemos que crear un array temporal para redimensionarlo
			double[,] tmpArray=new double[(nameArray2.Length)/2+1,2];
			//Copiamos el contenido de nuestro array al temporal
			Array.Copy(nameArray2,tmpArray,nameArray2.Length);
			Console.WriteLine("length tmpArray: " + tmpArray.Length);
			Console.WriteLine("length nameArray2: " + nameArray2.Length);
			//Copiamos el array temporal a nuestro array
			nameArray2=tmpArray;
			//Mostramos el contenido de nuestro nuevo array
			Console.WriteLine("length nameArray2 resized: " + nameArray2.Length);
			Console.WriteLine("Content nameArray2[0,0]: " + nameArray2[0,0]);
			Console.WriteLine("Content nameArray2[0,1]: " + nameArray2[0,1]);
			Console.WriteLine("Content nameArray2[1,0]: " + nameArray2[1,0]);
			Console.WriteLine("Content nameArray2[1,1]: " + nameArray2[1,1]);
			Console.WriteLine("Content nameArray2[2,0]: " + nameArray2[2,0]);
			Console.WriteLine("Content nameArray2[2,1]: " + nameArray2[2,1]);
			Console.WriteLine("-------------------");
 
			//Valor a redimensionarlo nuevamente utilizando la funcion redimArrayBidi
			redimArrayBidi(ref nameArray2,4,2);
			Console.WriteLine("length nameArray2 resized: " + nameArray2.Length);
			Console.WriteLine("Content nameArray2[0,0]: " + nameArray2[0,0]);
			Console.WriteLine("Content nameArray2[0,1]: " + nameArray2[0,1]);
			Console.WriteLine("Content nameArray2[1,0]: " + nameArray2[1,0]);
			Console.WriteLine("Content nameArray2[1,1]: " + nameArray2[1,1]);
			Console.WriteLine("Content nameArray2[2,0]: " + nameArray2[2,0]);
			Console.WriteLine("Content nameArray2[2,1]: " + nameArray2[2,1]);
			Console.WriteLine("Content nameArray2[3,0]: " + nameArray2[2,0]);
			Console.WriteLine("Content nameArray2[3,1]: " + nameArray2[2,1]);
			Console.WriteLine("-------------------");
		}
 
		// Funcion para redimensionar un array. Pasamos el valor del origen por referencia
		public static void redimArrayBidi(ref double[,] originArray,int cols, int rows)
		{
			//Tenemos que crear un array temporal para redimensionarlo
			double[,] tmpArray=new double[cols,rows];
			//Copiamos el contenido de nuestro array al temporal
			Array.Copy(originArray,tmpArray,originArray.Length);
			Console.WriteLine("length tmpArray: " + tmpArray.Length);
			Console.WriteLine("length origin: " + originArray.Length);
			//Copiamos el array temporal a nuestro array
			originArray=tmpArray;
			//return tmpArray;
		}
	}
}



Comentarios sobre la versión: Versión 1 (0)


No hay comentarios
 

Comentar la versión: Versión 1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios

http://lwp-l.com/s1750