Top Menu

21 de abril de 2013

{Java} Crear Array y Matriz de Objetos

En este post realizaremos lo que es crear un Array o Matriz de Objetos aunque es sencillo a veces se tiende a cometer un pequeño. Pero comencemos:

Como sabemos una arreglo es utilizado para almacenamiento y creo que una imagen vale mas que mil palabras:
Imagen tomada de: http://commons.wikimedia.org
Esto lo podemos usar si queremos un conjunto de objeto que tienen una misma función o caracteristica. 

Por ejemplo si queremos crear un array de 5 botones debemos hacerlo de la siguiente manera.
JButton []botones = new JButton[ 5 ];
Si lo vemos de un aspecto más generalizado sería:
NombreObjeto [] nombreVariable = new NombreObjeto[ cantidad ]; 
cantidad es cualquier valor número que puede ser dado por una variable, método o un valor númerico como tal. El [ ] indica que es un arreglo.

Ahora esto lo único que hace es crear un almacenamiento, ¿cómo así? podras decir, esto es de lo que comentaba al inicio del post, lo anterior crea un lugar para almacernar, en este caso botones pero no tiene botones. Es como si crearamos una caja con divisiones dentro de ella y esos espacios que tenemos dentro de la caja se coloca lo que queremos.
Imagen tomada de: http://bimg2.mlstatic.com/
Espero que con la imagen haya quedado claro :D.

Ahora para agregar botones al array lo haremos de la siguiente manera:
botones[0] = new JButton("Boton 1");
botones[1] = new JButton("Boton 2");
botones[2] = new JButton("Boton 3");
botones[3] = new JButton("Boton 4");
botones[4] = new JButton("Boton 5");
O por medio de un for:
for(int i = 0 ; i < 5 ; i++ ){
    botones[i] = new JButton("Boton " + (i+1));
}
Para una matriz de dos dimensiones de 3x2 es muy similar a un array:
JButton [][]botones = new JButton[ 3 ][ 2 ];
Donde  el primer [ ] (el 3) son las filas y el segundo [ ] son las columnas.
Si fuese la matriz de 3 dimensiones de 5x5x5:
JButton [][][]botones = new JButton[ 5 ][ 5 ][ 5 ];
Donde  el primer [ ] son las filas y el segundo son las columnas y el tercer [ ] es la profundidad.
Imagen tomada de: http://www.wikilearning.com
Para llenar la matriz con el objeto que queremos en este caso un boton es de la siguiente manera:
Para una matriz de 5x5:
botones[0][2] = new JButton(" Boton 0,2 ");
Si lo queremos hacer por medio de un for y llenar todos los espacios con botones es de la siguiente manera:
for(int fila = 0 ; fila < 3 ; fila++ ){
    for(int columna = 0 ; columna < 2 ; columna++ ){
        botones[fila][columna] = new JButton("Boton "+ fila + "," + columna);
    }
}
Y para finalizar un ejemplo:

Lo que hace el ejemplo es que se ingresa cuantas filas y columnas se quieren y al presionar al botón crear, crea una matriz de filas x columas. Y al dar clic al botón creado cambia de color.
 
Descargar ejemplo


Y si quieren ver el código:
Espero que les sea de utilidad. Dios te bendiga.

1 comentarios:

Unknown dijo...

me ayudo bastante solo que ami los botones me salen enormes existe la forma de colocarles un tamano.

Publicar un comentario