Podemos imaginar una calle mas o menos larga que tenga en uno de los lados aparcamientos señalizados y numerados secuencialmente del 0 a n-1. Los aparcamientos pueden estar en serie o en batería, para nosotros no importa. Esto es un array unidimensional de n componentes (aparcamiento).
En este array solo pueden aparcar coches en principio; se podría hacer un casting para que aparcaran furgonetas, ... ESTE ES EL PRINCIPIO FUNDAMENTAL DEL ARRAY: SOLO PUEDEN CONTENER DATOS DEL MISMO TIPO. No podemos poner bicicletas, ni contenedores, ni paradas de autobús.
De los arrays lineales podemos siempre saber el número de componentes que tiene con la variable numérica entera "length". Así, si el array antes descrito le llamamos parking, podemos saber el número de plazas de coche -solamente de coches, salvo casting- así: parking.length y nos dá su numero de componentes o la capacidad del parking total. El array es un objeto en Java: tiene constructor, y a la vez en cada componente podemos poner un objeto, en este caso coche, pero sin ponerlo: ponemos solo la referencia o dirección de memoria en la que se encuentra el coche en el heap de memoria del ordenador: es decir, en el parking no habrá un solo coche, en cada aparcamiento tendremos un "papelito" donde está escrito donde se encuentra el objeto coche en el heap de la memoria.
Cuando en un array guardamos datos del mismo tipo, pero primitivos (int, boolean, doubles, char, ...), éstos sí se guardan directamente en las componentes del array. Los String son objetos y se guardan sus referencias, como los coches por ejemplo.
La gran ventaja de los arrays es que podemos acceder directamente a sus componentes.
Declaración de un array lineal: Se dechara poniendo el tipo de Dato u objeto, dos corchetes: [], y el nombre del array que le demos, puede ser cualquiera pero guardando las especificaciones del lenguaje java para los nombres, y que sean lo mas descriptivo posible del objeto o dato primitivo:
int [] numCoches;
double [] kilosPesoCoches;
String [] marcaCoches;
Coche [] coche;
Y se definen y crean como cualquier objeto, un poco especial, con el new:
int [] numCoches = new int[n];
double [] kilosPesoCoches = new double[n];
String [] marcaCoches = new String[n]
Coche [] coche = new Coche[n];
Se supone que nos estamos moviendo en el mismo parking con n aparcamientos.
En este array solo pueden aparcar coches en principio; se podría hacer un casting para que aparcaran furgonetas, ... ESTE ES EL PRINCIPIO FUNDAMENTAL DEL ARRAY: SOLO PUEDEN CONTENER DATOS DEL MISMO TIPO. No podemos poner bicicletas, ni contenedores, ni paradas de autobús.
De los arrays lineales podemos siempre saber el número de componentes que tiene con la variable numérica entera "length". Así, si el array antes descrito le llamamos parking, podemos saber el número de plazas de coche -solamente de coches, salvo casting- así: parking.length y nos dá su numero de componentes o la capacidad del parking total. El array es un objeto en Java: tiene constructor, y a la vez en cada componente podemos poner un objeto, en este caso coche, pero sin ponerlo: ponemos solo la referencia o dirección de memoria en la que se encuentra el coche en el heap de memoria del ordenador: es decir, en el parking no habrá un solo coche, en cada aparcamiento tendremos un "papelito" donde está escrito donde se encuentra el objeto coche en el heap de la memoria.
Cuando en un array guardamos datos del mismo tipo, pero primitivos (int, boolean, doubles, char, ...), éstos sí se guardan directamente en las componentes del array. Los String son objetos y se guardan sus referencias, como los coches por ejemplo.
La gran ventaja de los arrays es que podemos acceder directamente a sus componentes.
Declaración de un array lineal: Se dechara poniendo el tipo de Dato u objeto, dos corchetes: [], y el nombre del array que le demos, puede ser cualquiera pero guardando las especificaciones del lenguaje java para los nombres, y que sean lo mas descriptivo posible del objeto o dato primitivo:
int [] numCoches;
double [] kilosPesoCoches;
String [] marcaCoches;
Coche [] coche;
Y se definen y crean como cualquier objeto, un poco especial, con el new:
int [] numCoches = new int[n];
double [] kilosPesoCoches = new double[n];
String [] marcaCoches = new String[n]
Coche [] coche = new Coche[n];
Se supone que nos estamos moviendo en el mismo parking con n aparcamientos.