Qué Es Un Array
Qué Es Un Array
Qué Es Un Array
Un array es una estructura de datos que nos permite almacenar una ristra de datos de un
mismo tipo. El tamao de los arrays se declara en un primer momento y no puede cambiar en
tiempo de ejecucin como puede producirse en otros lenguajes.
1. tipo_dato nombre_array[];
2. nombre_array = new tipo_dato[tamao];
1. char arrayCaracteres[];
2. arrayCaracteres = new char[10];
Los arrays se numeran desde el elemento cero, que sera el primer elemento, hasta el
tamao-1 que sera el ltimo elemento. Es decir, si tenemos un array de diez elementos, el
primer elemento sera el cero y el ltimo elemento sera el nueve.
1. arrayCaracteres[numero_elemento];
1. // Lectura de su valor.
2. char x = arrayCaracteres[2];
3.
4. // Asignacin de un valor. Como se puede comprobar se pone el
nmero dos, que coincide con el tercer elemento. Ya que como
dijimos anteriormente el primer elemento es el cero.
5. arrayCaracteres[2] = 'b';
El objeto array, aunque podramos decir que no existe como tal, posee una variable, la cual
podremos utilizar para facilitar su manejo.
Esta variable nos devuelve el nmero de elementos que posee el array. Hay que tener en
cuenta que es una variable de solo lectura, es por ello que no podremos realizar una
asignacin a dicha variable.
Por ejemplo esto nos servira a la hora de mostrar el contenido de los elementos de un array:
1. char array[];
2. array = new char[10];
3.
4. for (int x=0;x<array.length;x++) {
5. System.out.println (array[x]);
6. }
Podremos declarar arrays de varios subndices, pudiendo tener arrays de dos niveles, que
seran similares a las matrices, arrays de tres niveles, que seran como cubos y as
sucesivamente, si bien a partir del tercer nivel se pierde la perspectiva geomtrica.
1. tipo_dato nombre_array[][];
2. nombre_array = new tipo_dato[tamao][tamao];
1. int matriz[][];
2. matriz = new int[2][2];
Hay que tener en cuenta que para mostrar su contenido tendremos que utilizar dos bucles.
Para saber el nmero de columnas lo haremos igual que antes mediante la variable length,
pero para saber el numero de filas que contiene cada columna lo tendremos que realizar de la
siguiente manera:
1. matriz[numero_elemento].lenght;
1. int matriz[][];
2. matriz = new int[4][4];
3. for (int x=0; x < matrix.length; x++) {
4. for (int y=0; y < matriz[x].length; y++) {
5. System.out.println (matriz[x][y]);
6. }
7. }
Incializacin de Arrays
Existe una forma de inicializar un array con el contenido, amoldndose su tamao al nmero
de elementos a los que le inicialicemos. Para inicializar un array utilizaremos las llaves de la
siguiente forma:
Los arrays
Clases y objetos
Arrays multidimensionales
El cdigo fuente
Declarar el array
Crear el array
Inicializar los elementos del array
Usar el array
tipo_de_dato[] nombre_del_array;
numeros=new int[4];
numeros[0]=2;
numeros[1]=-4;
numeros[2]=15;
numeros[3]=-25;
No necesitamos recordar el nmero de elementos del array, su miembro dato length nos
proporciona la dimensin del array. Escribimos de forma equivalente
Los arrays se pueden declarar, crear e inicializar en una misma lnea, del siguiente modo
Java verifica que el ndice no sea mayor o igual que la dimensin del array, lo que
facilita mucho el trabajo al programador.
Declarar
Rectangulo[] rectangulos;
Crear el array
rectangulos=new Rectangulo[3];
Rectangulo[] rectangulos={new
Rectangulo(10, 20, 30, 40),
new Rectangulo(30, 40), new
Rectangulo(50, 80)};
Usar el array
Para calcular y mostrar el rea de los rectngulos escribimos
System.out.println(rectangulos[i].calcul
arArea());
}
Arrays multidimensionales
Una matriz bidimensional puede tener varias filas, y en cada fila no tiene por qu haber
el mismo nmero de elementos o columnas. Por ejemplo, podemos declarar e inicializar
la siguiente matriz bidimensional
double[][]
matriz={{1,2,3,4},{5,6},{7,8,9,10,11,12},{13}
};
Para mostrar los elementos de este array bidimensional escribimos el siguiente cdigo
System.out.print(matriz[i][j]+"\t");
}
System.out.println("");
}
Los arrays bidimensionales nos permiten guardar los elementos de una matriz.
Queremos crear y mostrar una matriz cuadrada unidad de dimensin 4. Recordaremos
que una matriz unidad es aquella cuyos elementos son ceros excepto los de la diagonal
principal i==j, que son unos. Mediante un doble bucle for recorremos los elementos de
la matriz especificando su fila i y su columna j. En el siguiente programa
System.out.print(mUnidad[i][j]+"\t");
}
System.out.println("");
}
}
}
buscado:
for(i=0; i<matriz.length; i++){
for(j=0; j<matriz[i].length;
j++){
if(matriz[i][j]==numero){
break buscado;
}
}
}
System.out.println("buscado:
matriz("+ i+", "+j+")="+matriz[i][j]);
package matrizUnidad;
try{
//espera la pulsacin de una tecla y luego RETORNO
System.in.read();
}catch (Exception ex) { }
}
}
Cuando vayamos a inicializar un array en Java tenemos varias posibilidades de hacerlo.
No es que haya una mejor que otra, sino que podramos decir que dependiendo de las
circunstancias que se nos den e incluso de la que nos guste ms.
String a[] =
{"Avila","Burgos","Len","Palencia","Salamanc
a",
"Segovia","Soria","Valladolid","Zamora"};
En este caso no hace falta que indiquemos numricamente el nmero de elementos, sino
que el tamao se calcular dependiendo de los elementos que pongamos entre las llaves.
b[0] = "Avila";
b[1] = "Burgos";
b[2] = "Len";
...
MATRIZ
Una matriz matemtica es una tabla bidimensional de nmeros. Las matrices pueden
sumarse, multiplicarse,... Y suelen ser utilizadas para describir sistemas de ecuaciones
lineales. Leer ms sobre matrices en Wikipedia.
Si queremos representar una matriz en Java hay que crear un array bidimensional. Por
ejemplo para declarar una matriz de 3x3 haramos lo siguiente:
1.matriz[0][0] = 2;
2. matriz[0][1] = 4;
3. matriz[0][2] = 4;
4. matriz[1][0] = 6;
5. matriz[1][1] = 6;
6. matriz[1][2] = 9;
7. matriz[2][0] = 8;
8. matriz[2][1] = 10;
9. matriz[2][2] = 12;
Hay que recordar que los elementos empiezan a numerarse por 0. As la esquina superior
izquierda de la matriz ser el elemento [0][0] y la esquina inferior derecha ser el [2][2].
De igual manera, si nos apoyamos en el mtodo .lenght del array podremos listar el
contenido de la matriz