23.02.2017 Views

Java

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Java</strong> 181<br />

java.util.Map<br />

Esta interfaz representa un conjunto de asociaciones entre pares de<br />

objetos, donde uno de ellos es considerado como clave. Por lo común<br />

se denomina a este tipo de colecciones como diccionarios o mapas y,<br />

extrañamente no hereda de Collection. Los objetos<br />

usados como claves conforman un conjunto y por<br />

lo tanto no pueden usarse para asociar dos objetos<br />

distintos al mismo tiempo en el mismo mapa (y, al<br />

igual que con los Set, deberían ser inmutables). Map<br />

tampoco extiende Iterable, por lo tanto los objetos<br />

de este tipo no pueden ser usados en el for each.<br />

Map ofrece tres modos de acceder a su contenido,<br />

como si fuera una colección. Primero, podemos<br />

acceder a las asociaciones mediante el mensaje<br />

entrySet, que devuelve un Set, o<br />

sea un conjunto de pares clave-valor. Segundo, para acceder al conjunto<br />

de claves podemos enviarle al mapa el mensaje keySet. Finalmente, si<br />

solamente nos interesan los valores y no las claves, podemos utilizar el<br />

método values, que retorna una colección con los valores.<br />

Para agregar elementos a un mapa se utilizan los métodos put y<br />

putAll, donde el primero espera como parámetros la clave y el valor,<br />

mientras que el segundo espera otro mapa. Para remover elementos<br />

se utiliza el método remove, que recibe la clave. Este método remueve<br />

la asociación completa, clave y valor. Si queremos obtener el valor<br />

asociado a una determinada clave, usamos get que toma como<br />

argumento la clave y devuelve el valor asociado. Si no está asociada la<br />

clave a ningún valor en el mapa, se retorna null. Podemos consultar si<br />

existe una clave en particular mediante containsKey y un valor mediante<br />

containsValue. Extrañamente el método remove acepta cualquier objeto<br />

map ofrece tres<br />

modos de acceder<br />

a su contenido,<br />

como si fuera una<br />

colección<br />

Métodos auxiliares de colecciones<br />

Es necesario comprender que la clase java.util.Collections es un repositorio de métodos estáticos<br />

que permiten realizar operaciones sobre las colecciones que no están disponibles. Por ejemplo, ofrece<br />

métodos para buscar los elementos máximos y mínimos, y ordenarlos. También permite ampliar las<br />

colecciones y hacerlas inmutables o sincronizables.<br />

www.FreeLibros.me<br />

www.redusers.com

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!