bloque3:arrays
Diferencias
Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
bloque3:arrays [20/12/2017 19:59] – Fernando Valdeón | bloque3:arrays [02/03/2018 14:49] (actual) – borrado Fernando Valdeón | ||
---|---|---|---|
Línea 1: | Línea 1: | ||
- | ====== Arrays ====== | ||
- | Un array es una estructura de datos **que almacena una cantidad fija de elementos de la misma clase o tipo**. Todos los datos que almacena deben ser del mismo tipo. Una vez creados siempre tienen la misma cantidad de elementos; no pueden crecer. En Java los arrays son objetos al igual que el resto de tipos de datos que veremos a partir de ahora y funcionan algo distinta a los tipos primitivos. | ||
- | {{ : | ||
- | ===== Declarar una variable ===== | ||
- | Las variables de tipo array se declaran así: | ||
- | <code java> | ||
- | | ||
- | |||
- | // | ||
- | int[] numerosEnteros; | ||
- | | ||
- | | ||
- | </ | ||
- | Cuando creamos una variable de tipo array no indicamos el tamaño que almacenará, | ||
- | |||
- | Las variables anteriores no podré usarlas hasta que no contenga la referencia a array. Las variables de tipos de datos que almacenan objetos (no tipos primitivos) se llaman __variables de referencia__. | ||
- | |||
- | ===== Crear un objeto array ===== | ||
- | Para construir un array, igual que ocurre con casi todos los objetos, necesitamos invocar al operador **// | ||
- | <code java> | ||
- | int[] enteros = new int[4]; | ||
- | |||
- | String[] listaCadenas; | ||
- | listaCadenas = new String[200]; | ||
- | |||
- | </ | ||
- | |||
- | También puedo crear un array en el momento de la declaración de su variable, indicando directamente los valores que contiene (luego podrán ser modificados): | ||
- | |||
- | <code java> | ||
- | int[] numeros = {4, 6, -435, 65, 0}; //He construido un array de 5 enteros | ||
- | |||
- | String[] nombres = {" | ||
- | </ | ||
- | |||
- | ===== Lo más importante de los arrays ===== | ||
- | El aspecto más importante de los arrays es que son **objetos** y no tipos primitivos. | ||
- | Toda variable que no es de un tipo primitivo es una **variable de referencia**. | ||
- | Solo hay 8 tipos primitivos (byte, short, int, long, float, double, boolean, char). Todo los demás son objetos. | ||
- | |||
- | **Las variables de referencia no almacenan al objeto (valor) sino la referencia (dirección de memoria) de ese objeto.** | ||
- | |||
- | <code java> | ||
- | //Con variables primitivas | ||
- | int num1 = 7; | ||
- | int num2; | ||
- | |||
- | num2 = num1; | ||
- | num2 = 4; | ||
- | //En este punto num1 -> 7 y num2 -> 4 | ||
- | |||
- | //Con variables de referencia: creo 2 variables, pero solo un array | ||
- | int[] enteros1 = new int[4]; | ||
- | int[] enteros2; | ||
- | |||
- | enteros2 = enteros1; | ||
- | //Ambas variables tienen la misma información: | ||
- | //Esta información es la referencia a un mismo array. Por ej: @F456AC | ||
- | |||
- | enteros1[0] = 6; | ||
- | enteros2[0] = 9; | ||
- | |||
- | //Tanto enteros1[0] como enteros2[0] guardan 9 | ||
- | //enteros1 -> @F456AC y enteros2 -> @F456AC | ||
- | //Ambas variables referencian al mismo array | ||
- | </ |
bloque3/arrays.1513799967.txt.gz · Última modificación: 16/09/2024 20:53 (editor externo)