Keywords: Matrices01.png es curso de programación es curso de programación libro de texto Fco Javier Ceballos 2006-01 MATRICES EN JAVA En java muchas ocasiones vamos a tener que manipular conjuntos muy grandes de valores Por ejemplo si queremos calcular el promedio general de los 30 alumnos que cursan la clase de programación necesitarÃamos conocer el promedio de cada alumno quizá podrÃamos utilizar una variable para introducir los 30 valores uno cada vez y acumular la suma de estos en otra variable Pero ¿qué ocurrirá con los valores que vayamos introduciendo que cuando tecleemos el segundo valor el primero se perderá; cuando tecleemos el tercero el segundo se perderá y asà sucesivamente Cuando hayamos introducido todos los valores entonces podremos calcular el promedio general pero el promedio correspondientes a cada alumno se habrá perdido ¿qué podrÃamos hacer para almacenar todos esos valores pues podrÃamos utilizar 30 variables diferentes; pero ¿qué pasarÃa si fueran 100 o mas valores los que tuviéramos que ingresar Además de ser muy laborioso el definir cada una de las variables el código se verÃa enormemente incrementado Lo mas conveniente en estos casos es registrar el conjunto de valores todos del mismo tipo en unas estructuras de datos llamadas matrices Una matriz es una estructura homogénea compuesta por varios elementos todos del mismo tipo y almacenados consecutivamente en memoria Cada elemento puede ser accedido por medio del nombre de la variable matriz seguida de uno o más subÃndices encerrados entre corchetes La representación de las matrices se hace mediante variables suscritas o de subÃndices y pueden tener una o varias dimensiones subÃndices A las matrices de una dimensión se les llama también listas y a las de 2 dimensiones se les llaman tablas Por ejemplo supongamos que tenemos una matriz unidimensional llamada m la cual contiene 10 elementos Estos elementos se identificarán de la siguiente forma Matriz m m0 m1 m2 m3 m4 m5 m6 m7 m8 m9 Observamos que los subÃndices son enteros consecutivos y que el primer subÃndice vale 0 Un subÃndice puede ser una expresión entera positiva Asà mismo una matriz de 2 dimensiones se representa mediante una variable y 2 subÃndices filas columnas ; una matriz de 3 dimensiones se representa mediante una variable con tres subÃndices etc El numero máximo de dimensiones o el numero máximo de elementos para una matriz dentro de los limites establecidos por el compilador depende de la memoria disponible Entonces las matrices según su dimensión se clasifican en unidimensionales y multidimensionales; y también se clasifican según su contenido en matrices numéricas de caracteres y de referencias a objetos En java cada elemento de una matriz unidimensional es de tipo primitivo int float doudle char String etc o bien una referencia a un objeto y cada elemento de una matriz multidimencional es a su vez una referencia a otra matriz MATRICES NUMÉRICAS UNIDIMENSIONALES Al igual que sucede con otras variables antes de utilizar una matriz hay que declararla La declaración de una matriz especifica el nombre de la matriz y el tipo de electo de la misma Para crear y poner utilizar una matriz se necesitan realizar 3 operaciones declararla crearla e iniciarla DECLARAR UNA MATRIZ La declaración de una matriz de una dimensión se hace indistintamente de una de las 2 formas siguientes tipo nombre; tipo nombre ; donde tipo †’ es el tipo de electos de la matriz que pueden ser de cualquier tipo primitivo o referenciado nombre †’ identificador que nombra a la matriz †’ modifican la definición normal del identificador para que sea interpretado por el compilador como una matriz Las siguientes lÃneas de código son ejemplos de declaraciones de matrices int m; float temperatura; COrdenador ordenador; // COrdenador es una clase de objetos La primera lÃnea declara una matriz de elementos de tipo int; la segunda una matriz de elementos de tipo float; y la tercera una matriz de objetos COrdenador Note que las declaraciones no especifican el tamaño de la matriz El tamaño será especificado cuando se cree la matriz operación que se realizara durante la ejecución del programa Como ha podido observar los corchetes se pueden colocar después del nombre de la matriz Por lo tanto las declaraciones anteriores pueden escribirse también asà int m ; float temperatura ; COrdenador ordenador ; CREAR UNA MATRIZ Después de haber declarado una matriz el siguiente paso es crearla o construirla Crear una matriz significa reservar la cantidad de memoria necesaria para contener todos sus elementos y asignar el nombre de la matriz una referencia a este bloque nombre new tipo tamaño; nombre †’ nombre de la matriz previamente declarada tipo †’ tipo de los elementos de la matriz tamaño †’ expresión entera positiva menor o igual que la expresión de un int que especifica el numero de elementos El operador new significa que java implementa las matrices como objetos Las siguientes lÃneas de código crean las matrices declaradas en el ejemplo anterior m new int 10; temperatura new float 31; ordenador new COrdenador 25; INICIAR UNA MATRIZ Una matriz es un objeto; por lo tanto cuando es creada sus elementos son automáticamente iniciados si la matriz es numérica sus elementos son iniciados a 0 un elemento booleano a false y las referencias a objetos a null Si deseamos iniciar una matriz con otros valores diferentes a los predeterminados podemos hacerlo de la siguiente forma int calificaciones new int 10 14 20 40 9 2 100 ; el ejemplo anterior crea una matriz calificaciones de tipo int con tantos elementos como valores se hayan especificado entre llaves Cc-zero Matrix |