Documente Academic
Documente Profesional
Documente Cultură
JA
Bauman / Dcima
Java Electrotecnia
Arreglos
Java
Arreglos:
Los arreglos en Java, son objetos. Debido a que los arreglos son objetos, pueden ser pasados a otros
objetos; son un medio para guardar una lista de elementos relacionados. Todo lo que se quiere guardar en
un arreglo es guardado en un elemento. Cuando se declara un arreglo, se le da un tipo de dato, un
nombre de variable y un tamao. El tipo de dato determina el tipo de elemento que contendr el arreglo,
el nombre es la manera en que se har referencia al arreglo y el tamao determina la cantidad de
elementos en el arreglo. Los arreglos se pueden usar para guardar informacin esttica, como los das de
la semana, o informacin variable como la entrada de un usuario a una pgina Web.
Se puede usar cualquiera de los tipos de datos (primitivos u objetos) para crear un arreglo, pero una
declaracin de arreglo (y por lo tanto, los elementos) puede contener solo un tipo de dato. Por ejemplo se
puede tener un arreglo de enteros, un arreglo de cadenas o un arreglo de arreglo, pero no se puede tener
un arreglo que contenga tanto enteros como cadenas.
String DiasDeLaSemana[];
int CantidadDeNumeros[];
Un mtodo alterno para la definicin de una variable de arreglo es poner los corchetes despus del tipo
de dato en vez de ponerlos despus de la variable. Por ejemplo:
String[] DiasDeLaSemana;
int[] CantidadDeNumeros;
? Usando new.
? Inicializando directamente el contenido del arreglo.
La primera forma es usar el operador new para crear una nueva instancia de un arreglo.
2 POLITECNICO
Esta lnea crea un nuevo arreglo que contendr diez elementos de tipo String. Cuando se crea un
nuevo objeto de arreglo usando esta forma (operador new), se debe declarar el tamao del arreglo.
Los objetos de arreglo pueden contener tipos primitivos, tales como enteros o booleanos, de la misma
manera en que pueden contener objetos:
Cuando crea un objeto de arreglo usando new todos sus elementos son inicializados por usted: 0 (cero)
para los arreglos numricos, false para los booleanos, '\0' para los arreglos de caracteres, y null para
los objetos. Tambin se puede crear e inicializar un arreglo al mismo tiempo. En vez de usar new para
crear el nuevo objeto de arreglo se encierran todos los elementos del arreglo entre un par de llaves, y se
separa a cada elemento mediante comas; a continuacin vemos un ejemplo prctico que podemos
comenzar a tipear:
Cada uno de los elementos que se utilizan para inicializar el arreglo deben ser del mismo tipo de dato,
as como del mismo tipo de dato que el de la variable que contiene a ese arreglo. Esto significa que si el
tipo de dato es String, todos los elementos tambin deben ser cadenas.
En tiempo de ejecucin se crea automticamente un arreglo, y su tamao estar basado en la cantidad
de elementos que se usaron cuando fue declarado. El ejemplo anterior crea un arreglo de objetos String
llamado Dias, que contiene siete elementos.
Dias[subndice];
POLITECNICO 3
Arreglos
Java
Debemos tener en cuenta que los arreglos en Java estn basados en cero. Esto significa que el subn-
dice del primer elemento es 0 y el ltimo es uno menos que el tamao del arreglo. Entonces, en este caso,
Dias[1], mostrar "Martes", y Dias[2], mostrar "Mircoles".
La parte Dias de esta expresin (Dias[subndice]) es la variable que contiene el objeto de arreglo.
La expresin subndice, especifica el elemento al que se acceder dentro del arreglo. Los subndices del
arreglo estn basados en cero, lo que significan que comienzan en 0, al igual que sucede en C y C++. Por
lo tanto un arreglo con 10 elementos tiene 10 elementos que son accedidos usando los subndices del 0 al
9. Esto nos obliga a tomar ciertos recaudos tales como:
? Cuando hacemos referencias a un elemento del arreglo tambin hay que pensar en trminos de
uno menos. Por ejemplo, Dias[0] = "Lunes", donde el primer da de la semana es cero y no
uno, como se podra esperar.
? Cuando se est incrementando a travs de los elementos del arreglo, se comienza en cero y se
termina en el tamao menos uno.
Observe que todos los subndices de arreglo son revisados en tiempo de compilacin y en tiempo de
ejecucin para asegurarse de que se encuentra dentro de los lmites del arreglo: mayor o igual a 0, pero
uno menos que la longitud del arreglo. En Java es imposible acceder o asignar un valor a un elemento que
est fuera de los lmites del arreglo. Observe las dos instrucciones siguientes, por ejemplo:
4 POLITECNICO
Cambio de elementos de un arreglo
Para asignar un valor a un elemento de arreglo especfico debemos poner una instruccin de asignacin
despus de la expresin del nombre del arreglo:
MiArray[1] = 15;
Sentencia[0] = "PC";
Sentencia[10] = Sentencia[0]; // Ahora Sentencia[10] equivale, por
// referencia, a "PC";
Una cosa importante que debemos observar es que un arreglo de objetos en Java es un arreglo de
referencias a esos objetos. (Es similar, de alguna forma, a un arreglo de apuntadores en C o C++.)
Cuando se asigna un valor a un elemento de un arreglo, se est creando un referencia a ese objeto., al
igual que como se hace con una variable cualquiera. Cuando se mueven valores dentro de un arreglo
(como se hizo en el ejemplo anterior en la ltima lnea), simplemente se reasigna la referencia. No se
copia el valor de un elemento a otro, a excepcin de los arreglos de datos primitivos, como int o float,
que si se copian los valores de un arreglo a otro.
Los arreglos de referencia a objetos, a diferencia de los objetos mismos, son particularmente tiles,
debido a que significa que se pueden tener varias referencias a los mismos objetos, tanto dentro como
fuera de los arreglos. Por ejemplo, se puede asignar un objeto que est contenido en un arreglo a una
variable, y hacer referencia a ese mismo objeto usando la variable o el subndice del elemento del arreglo.
Arreglos de Arreglos
Java soporta arreglos de arreglos. Puede considerar a estos arreglos de arreglos como arreglos
multidimensionales (como los que encontramos en C). Un arreglo de Java puede contener como elementos
otros arreglos, y estos ltimos pueden contener otros ms, y as sucesivamente, con tanta profundidad
como se quiera. Cuando declare un arreglo debe proporcionar un tamao para cada una de las columnas,
y cuando necesite hacer referencia a un elemento especfico puede estar ahora en cualquiera de las
columnas.
POLITECNICO 5