jueves, 29 de marzo de 2012

Arrays

Buenas amigos, ya hemos visto las clases de tipo STRING, INT y FLOAT, ahora veremos los ARRAYS o VECTORES, pero ¿qué es un ARRAY o VECTOR?.

Bien, un ARRAY es un medio por el cual se pueden guardar un conjunto objetos de la misma clase. Se accede a cada elemento del ARRAY por medio de un indice de números enteros con valor inicial 0, y con un valor máximo de x-1, donde x es el tamaño del ARRAY.



El formato del ARRAY o VECTOR es el siguiente:

      • TipoDeDato [ ] NombreDelArray=new TipoDeDato[TamañoDelArray];
  1. Primero definimos el tipo de dato (int, float, String...) y le ponemos corchetes "[ ]".
  2. Ponemos un nombre al ARRAY, el que más os guste.
  3. Creamos el objeto ARRAY (si, un ARRAY es un objeto, en temas posteriores explicaremos que es un objeto) con la linea "new TipoDeDato"
  4. Y por último asignamos un tamaño del ARRAY, que será un número entero e irá entre corchetes      "[ ]".
Un ejemplo rápido: "Crear un ARRAY de tipo entero que almacene 4 números":
        • int [ ] numEnteros=new int[ 4 ];
Definimos el ARRAY de tipo int, con el nombre numEnteros y creamos el objeto con un tamaño de 4. Pero este ARRAY está vacío, es decir, sabemos su tipo, sabemos el nombre, y sabemos el tamaño que tiene, pero no le hemos introducido nada. Para ello tenemos varias formas:
  1. Crear el ARRAY con el tamaño(como hemos hecho arriba) y posteriormente rellenarlo uno por uno. Bien, una vez creado el ARRAY numEnteros y sabiendo que es de 4 posiciones, nos disponemos a rellenar:
      • numEnteros[0]=1
      • numEnteros[1]=2
      • numEnteros[2]=3;
      • numEnteros[3]=4;

        Con eso rellenaríamos las 4 posiciones del ARRAY con los números 1, 2, 3 y 4, como vemos entre corchetes "[ ]" colocamos a la posición en la que irá cada número, como dijimos anteriormente, el indice del ARRAY comienza por 0 y acaba en x-1, siendo x el tamaño del ARRAY, por lo tanto un ARRAY de 4 posiciones, comienza en 0 y termina en 3. Eso resulta así por que JAVA comienza a contar a partir de 0, y no será la única vez que veamos esto.

  2. Rellenar el ARRAY al mismo tiempo que lo creamos.
    • int [ ] numEnteros={1,2,3,4};
    De esta manera, el ARRAY se crea y se rellena, sabiendo que tiene 4 posiciones por la cantidad de datos que contiene entre llaves "{ }"
  3. Rellenar el ARRAY con un FOR.
    • for(int i =0;i<numEnteros.length;i++){
    • numEnteros[i]=i+1;
    • }
      • Iniciamos el FOR con una variable, i , de tipo entero con valor 0. Este variable i, será la que nos marque la posición del ARRAY.
      • En la segunda expresión le indicamos al FOR que ejecute el bucle mientras i sea menor que numEnteros.length. El objeto .length devuelve el tamaño del ARRAY, poner menor que 4 o numEnteros.length, es lo mismo, para este ejemplo, pero nos acostumbraremos a ponerlo por que en temas posteriores crearemos ARRAYS que vayan modificando su tamaño, y en algunos momentos ya no sabremos cuantas posiciones tiene, así que, con un .length, sabremos con toda seguridad el tamaño.
      • En la secuencia de instrucciones del FOR rellenamos el ARRAY, ¿Como?, Bien, con la variable i, le damos la posición del ARRAY numEnteros[ i ], como la variable i vale 0 inicialmente, la primera vez que se ejecute numEnteros[i], ocupará la casilla 0 y rellenará la casilla 0 con la suma del valor i+1, y como i vale cero, la suma será 1, con lo cual, la primera casilla 0, valdrá 1. El FOR volverá a iniciar el bucle y sumará +1 a i (i++), y volverá a realizar el proceso anterior hasta que i, sea igual o mayor que el tamaño del ARRAY.
Bien, y ya para terminar, nos falta mostrar por consola, los datos que contiene el ARRAY, para ello hacemos como el punto 3 anterior, lo recorremos con un FOR, y en vez de rellenarlo, lo mostramos por pantalla:
        • for(int i=0;i<numEnteros.length;i++){
        • System.out.print(numEnteros[ i ]);
        • }
Como dijimos anteriormente, al iniciar el FOR, crea una variable i de tipo entero con valor 0, y le decimos al FOR que se ejecute mientras la variable i sea menor que la longitud del ARRAY.
En la secuencia de instrucciones, le decimos que nos muestre por pantalla el valor que tiene numEnteros en la posición i, como i inicialmente vale 0, nos mostrará el dato situado en la posición 0, se vuelve ejecutar el bucle FOR incrementado en +1 el valor de i (i++), y vuelve a ejecutar la secuencia de instrucciones con el nuevo valor de i, y así hasta que el valor de i sea mayor o igual que el tamaño del ARRAY.

Hasta aquí los ARRAYS o VECTORES, en el siguiente tema veremos los ARRAYS BIDIMENSIONALES o MATRIZ.

Un saludo.


1 comentario:

  1. Tu pagina es excelente, muchas gracias por compartir tu conocimiento

    ResponderEliminar