Clase 05 - Arreglos Uidimensionales- Vectores

ARREGLOS UNIDIMENSIONALES


Un array es una colección finita de datos del mismo tipo, que se almacenan en posiciones consecutivas de memoria y reciben un nombre común.
Por ejemplo, supongamos que queremos guardar las notas de los 20 alumnos de una clase.
Podemos representar gráficamente el array de notas de la siguiente forma:
Array notas:
8.50
6.35
5.75
8.50
· · ·
3.75
6.00
7.40
notas[0]
notas[1]
notas[2]
notas[3]
· · ·
notas[17]
notas[18]
notas[19]
Para acceder a cada elemento del array se utiliza el nombre del array y un  índice que indica la posición que ocupa el elemento dentro del array.
El índice se escribe entre corchetes.
El primer elemento del array ocupa la posición 0, el segundo la posición 1, etc. En un array de N elementos el último ocupará la posición N-1.
En el ejemplo anterior, notas[0]  contiene la nota del primer alumno  y notas[19] contiene la del último
Los índices deben ser enteros no negativos.
1.          CREAR ARRAYS UNIDIMENSIONALES
Para crear un array se deben realizar dos operaciones:
-           Declaración
-           Instanciación
Declarar de un array
En la declaración se crea la referencia al array.
La referencia será el nombre con el que manejaremos el array en el programa.
Se debe indicar el nombre del array y el tipo de datos que contendrá.
De forma general un array unidimensional se puede declarar en java de cualquiera de estas dos formas:
 tipo []  nombreArray;
 tipo nombreArray[];
tipo: indica el tipo de datos que contendrá. Un array puede contener elementos de tipo básico o referencias a objetos.
nombreArray: es la referencia al array. Es el nombre que se usará en el programa para manejarlo.
Por ejemplo:
int [] ventas;  //array de datos de tipo int llamado ventas
double [] temperaturas;  //array de datos de tipo double llamado temperaturas
String [] nombres; //array de datos de tipo String llamado nombres
Instanciar un array
Mediante la instanciación se reserva un bloque de memoria para almacenar todos los elementos del array.
La dirección donde comienza el bloque de memoria donde se almacenará el array se asigna al nombre del array.
De forma general:
nombreArray = new tipo[tamaño];
nombreArray: es el nombre creado en la declaración.
tipo: indica el tipo de datos que contiene.
tamaño: es el número de elementos del array. Debe ser una expresión entera positiva. El tamaño del array no se puede modificar durante la ejecución del programa.
new: operador para crear objetos. Mediante new se asigna la memoria necesaria para ubicar el objeto. Java implementa los arrays como objetos.
Por ejemplo:
ventas = new int[5]; //se reserva memoria para 5 enteros y
//se asigna la dirección de inicio del array a ventas.
Lo normal es que la declaración y la instanciación se hagan en una sola instrucción:
tipo []  nombreArray = new tipo[tamaño];
Por ejemplo:   int [] ventas = new int[5];
El tamaño del array también se puede indicar durante la ejecución del programa, es decir, en tiempo de ejecución se puede pedir por teclado el tamaño del array y crearlo:

Scanner sc = new Scanner(System.in);
System.out.print("Número de elementos del array: ");
int numeroElementos = sc.nextInt();
int [] ventas = new int[numeroElementos];
Si no hay memoria suficiente para crear el array, new lanza una excepción java.lang.OutOfMemoryError.
Diferencia entre la referencia y el contenido del array
Debe quedar clara la diferencia entre la referencia (manejador del array o nombre del array) y el contenido del array.
El nombre del array contiene la dirección de memoria del contenido del array.

1 comentario: