martes, 3 de octubre de 2017

Arreglos

ARREGLOS EN JAVA

Hola que tal, esta vez vamos a ver que son los arreglos en Java (vectores y matrices en Java). Los arreglos pueden ser unidimensionales (también conocidos como vectores o arrays), Multidimensionales (matrices) que pueden ser de 2 o 3 dimensiones.
Hasta ahora para poder almacenar información (de forma temporal) y poder utilizarla en los programas, hemos utilizado las variables, ya sea de tipo entero, String, double etc.
Si quieres profundizar sobre el tema de variables revisa esta entrada Variables y tipos de datos en Java.
Bueno, con lo visto hasta ahora, digamos que queremos almacenar 25 notas de estudiantes, esto requiere declarar 25 variables (algo razonable), pero ahora imaginemos que necesitamos almacenar 100 o 1000 o 2000 notas, en este caso tendremos que declara una variable para cada nota, en total serían 100 o 1000 o 2000 variables, tedioso, confuso y cansado, verdad?
El problema anterior se optimiza utilizando un tipo de estructuras datos que son los arreglos, los arreglos (específicamente un vector) son un tipo especial de objeto y permiten almacenar un conjunto de elementos de un mismo tipo, por ejemplo enteros, o String o char u objetos, pero no mezclados.
El compilador de Java trata a los arreglos de la misma manera que a una variable, es decir se declaran, se inicializan y posteriormente se utilizan.

ARREGLOS UNIDIMENSIONALES (VECTORES, ARRAYS, ARREGLOS)

La sintaxis para declarar e inicializar un vector es la siguiente:
En donde:
  • int es el tipo de dato para los elementos del vector, con esta declaración el vector sólo puede almacenar valores de tipo entero.
  • [] los corchetes le indican al compilador que no estoy declarando una variables, si no un vector.
  • miArreglo es el nombre que se le da al vector, con este nombre podré acceder a su contenido y utilizar cuantas veces sea necesario dentro del programa.
  • el operador = le dice al compilador que debe apuntar a una zona de memoria que se va reservar para el arreglo.
  • la palabra reservada new crea un espacio en memoria para el vector y la palabra int le dice que será de tipo entero.
  • [6] el número entre corchetes le indica que la dimensión para ese arreglo será de 6, esto quiere decir que sólo puede almacenar hasta 6 elementos enteros. Cabe aclarar que la dimensión de un arreglo es fija, una vez declarado, no se puede cambiar en tiempo de ejecución.
De acuerdo a lo anterior en un vector podemos almacenar elementos de cualquier tipo de dato (int, char, float, double etc.).
La declaración anterior de un vector en memoria se vería algo parecido a la siguiente imagen.
arreglo-vector-en-java
También podemos declarar e inicializar en en 2 sentencias:

CÓMO LLENAR UN VECTOR (GUARDAR ELEMENTOS EN UN VECTOR)

Un vector se maneja a través de posiciones, empezando desde la posición cero y para obtener/almacenar uno de sus elementos se utiliza un índice (una variable), el índice indica la posición del elemento en el vector a la que se quiere acceder.
Entonces un vector como el del ejemplo con dimensión 6, efectivamente se puede almacenar 6 elementos pero solo tendrá 5 posiciones (puesto que se empieza desde la posición 0) a las cual se puede acceder ya sea para almacenar u obtener elementos almacenados.
Para almacenar un elemento en un vector se utiliza la siguiente sintaxis:
nombre_vector [indice/posicion]=valor_asignar;
Utilizando el ejemplo anterior podríamos escribir la siguiente sentencia:
Lo que hicimos fue asignar en la posición 1 del vector, el elemento 7.
Nota importante: Tomar en cuenta que se puede utilizar directamente la posición (como en el ejemplo anterior) para acceder a un elemento, pero lo más común es utilizar una variable, como se verá más adelante.
Otra forma de inicializar un vector, es dándole sus elementos respectivos al momento de declararlo, en este caso no declaramos la dimensión, si no que el compilador asigna la dimensión de acuerdo a los elementos con los que se inicializa el vector:
tipo_dato [] nombre_variable = {valor1,valor2,valor3,valor3,N…};

CÓMO ACCEDER A UN ELEMENTO EN UN VECTOR

Para obtener un elemento desde un vector, se lo realiza de la siguiente forma:
tipo_dato nombre_variable= nombre_vector[indice/posicion];
Se está obteniendo el elemento de la posición 3 y se almacena en la variable de tipo entero llamada valor.
Nota importante: Cuando la dimensión de un arreglo es demasiado grande, se puede llenar o imprimir el contenido de un vector utilizando un ciclo for.
Si quieres seguir el tema de programación Web con Java, puedes revisar los siguientes enlaces:

EJEMPLO COMPLETO COMO UTILIZAR VECTORES EN JAVA

Ejemplo: Pedir 10 números por teclado y obtener la suma, media aritmética, el número menor, el número  mayor y cuántas veces se repite cada número.
Ahora vamos a resumir brevemente el código utilizado.

INGRESAR NÚMEROS

Se utiliza un for para el ingreso, que va desde la línea 14 hasta la 17.

REALIZAR LA SUMA Y BUSCAR EL NÚMERO MAYOR

Desde la línea 19 hasta la 26, con la ayuda de un ciclo for en la variable suma se acumula, la suma total de todos los elementos del vector, a la variable mayor se la inicializa en 0, con una sentencia if se va preguntando por cada iteración si el elemento del vector es mayor al valor que tiene actualmente la variable mayor, si es verdad se asigna en la variable mayor el elemento del vector, si no el valor de la variable mayor se mantiene.

 BUSCAR EL VALOR MENOR

En la línea 27 se asigna el valor mayor, contenido en la variable mayor a  la variable menor, utilizando un ciclo for y una sentencia if, se recorre el vector y se va preguntando si hay números menores al valor de la variable menor, en caso de haber se actualiza el contenido de la variable.

PROMEDIO Y NÚMERO DE VECES QUE SE REPITE CADA ELEMENTO

El promedio se obtiene en la línea 35, dividiendo la suma obtenida para el número de elementos del vector, para contar cuantas veces se repite un numero se utiliza 2 ciclos for, con una variable que hace de contador que almacena el número de veces repetidas por elemento.
Nota importante: El método length obtiene la dimensión que tiene un arreglo.
http://www.ecodeup.com/arreglos-en-java-declaracion-inicializacion-uso/

No hay comentarios:

Publicar un comentario

Interfaces

Un interfaz es una lista de acciones que puede llevar a cabo un determinado objeto. Sorpresa, ¿eso no eran los métodos que se definen en un...