top of page

Arrays

     Tal y como os he dicho ya en un par de las clases, hoy toca por fín el uso de los Arrays, en primer lugar, los arrays son una forma de poder definir varias variables con solo un nombre, la forma de construir un Array es muy similar al de la forma de construcción de las variables y existen los mismo tipos, primero se pone el tipo de la variable que valla a ser (int, boolean, float...), despues se colocan dos cochetes y se define con las palabras claves new y el tipo de la variable y dos corchetes.


int [ ] palabraClave = new int [ ] {

}

booblean [ ] palabraClave = new boolean [ ] {

}

float [ ] palabraClave  = new float [ ] {

}

 

 

     Y dentro de las llaves hay que definir el valor de cada uno de los Array, java, a la hora de colocar los corchetes, si que es verdad que nos da mucha flexibilidad a la hora de escribir los corchetes a los arrays, esto significa que no necesariamente tenemos que colocar los corchetes justo antes del nombre de la variable sino que tambien podemos colocarlo despues del nombre que le asignemos.

 

 

int palabraClave [ ] = new int [ ] {

}

booblean palabraClave [ ] = new boolean [ ] {

}

float palabraClave [ ]  = new float [ ] {

}

 

 

       Y ademas tambien le podemos asignar el número de variables que puede contener el Array porque recordemos que un Array es un conjunto de variables, y tambien habría que alegar que a cada uno de los elementos del Array se le llama "Item", el valor que le asignemos al Array será el número máximo que caben en un Array, y recordamos que en programación las variables empiezan desde el 0 y sigue aumentando, por lo que de tener esto: int [ ] palabraClave new int [ 50 ] { } el valor máximo (del nº de la variable al llamarla) será el 49. Aquí tenemos un ejemplo.

 

 

String palabraClave [ ] = new String [ 5 ] ;

    palabraClave [ 0 ] = "Antonio";

    palabraClave [ 1 ] = "Juan";

    palabraClave [ 2 ] = "Lucia";

    palabraClave [ 3 ] =  "Alba";

    palabraClave [ 4 ] =  "Paquirrín";

 

 

     También podemos definir cada uno de los Items al definir el Array tal y como se muestra a continuación:

 

 

        String palabraClave1 [ ] = { "Antonio", "Juan", "Lucia", "Alba", "Paquirriín" };
        String [ ] palabraClave2 = { "Antonio", "Juan", "Lucia", "Alba", "Paquirriín" };

 

 

 

     En java, tenemos otro método para la ordenación de los Items del Array el método (sort) aun que este método nos presenta alguna desventaja ya que solo nos permite ordenarlos, en el caso de ser un String en orden Alfabético y de ser números de menor a mayor, los pasos a seguir son:

 

1º   Importamos java.util.*

2º   crea un Array

3º   Usa el método sort de la clase Array

 

 

Os voy a poner un código de un programa y vamos a analizar lo que hace.

 

 

import java.util.*;

 

class ReordenaciondeArrays {
    public static void main (String [ ] args) {
        String nombres [ ] = { "Miguel", "Alex", "Maria", "Laura", "Paula",
            "Alexandra", "Lucia", "Bernarno", "Antonio"
};
        System.out.print( "El orden original es: " );
        for ( int i = 0; i < nombres.length; i++ ) {
            System.out.print( i + ": " + nombres[ i ] + "   ");
        }
        Arrays.sort(nombres) ;
        System.out.println( "\nEl nuevo orden: " );
        for ( int i = 0; i < nombres.length; i++ ) {
            System.out.print( i + ": " + nombres[ i ] + "   " );
        }
        System.out.println();
    }
}

 

 

     1º importamos java.util.* despues creamos un array de tipo String y le asignamos cada uno de los Item, despues creanos un Loop for, inicializamos una variable llamada i, y le decimos que si i es menor que la longitud del Array nombres que le sume uno, y que en cada iteración que imprima i mas nombres [ valor de i ] y despues de todo eso repetimos el mismo Loop for solo que en esta vez, le hemos colocado Array.sort(nombres) para que ordene los Items del Array. Existen dos tipos de Arrays, los normales, que son los que ya hemos visto y los denominados Arrays Multidimensionales que tienen esta forma:

 

 

boolean [ ] [ ] clave = new boolean [ 50 ] [ 50 ];

     clave [ 12 ] [ 42 ] = true;

     clave [ 32 ] [ 10 ] = true;

     clave [ 25 ] [ 49 ] = false;

     . . . ;

     . . . ;

     . . . ;

 

 

Al igual que hemos hecho un Array bidimensional como este (porque tiene dos dimensiones), hay que saber que tambien podemos crear Arrays tridimensionales ( boolean [ ] [ ] [ ] ) y en un principio podríamos crear Arrays de todas las dimensiones que quisiesemos, pero hay que saber que el uso de este tipo de arrays consume mucha memoria, en el caso de este sencillo ejemplo que acabamos de crear, el Array ocuparía la misma memoria que 2.500 variables, así que siempre nos tenemos que hacer la pregunta de que si este, es el mejor método para resolver un problema a la hora de escribir código. En el caso de que quisiesemos saber cuanta cantidad con va a caber dentro de un Array multidimensional es multiplicar los valores de dentro de los corchetes de cuando antes de comenzar a definir cada una de las variables.

 

 

boolean [ ] [ ] clave = new boolean [ 78 ] [ 65 ] [ 46 ] [ 132 ] [ 64 ];

 

                                                         78  *  65  *  46  *  132  *  64 = 1970242560

 

 

Este último ejemplo ocuparía lo que 1970242560 variables, así que, cuidado con las que definis.

bottom of page