Formas de ordenar un ArrayList

Hola a todos, hoy os explico como podemos ordenar un ArrayList de forma automática.

Ya vimos formas de ordenar en java, en ArrayList lo tendríamos que hacer de la misma forma.

Aunque con un ArrayList podemos ordenarlo de dos formas automaticas.

  • 1º forma: usar comparable

Lo primero que debes hacer es implementar la interfaz comparable de esta forma:

Esto hará que te obliguen a que crees el método compareTo, aquí ya debes decidir la forma de ordenar, te dejo un tutorial sobre el compareTo.

Comparación de objetos en Java

Os dejo un ejemplo con la clase empleado, yo ordeno por salario:

Ahora debemos utilizar lo siguiente:

Os dejo un ejemplo de ordenamiento.

Orden original

Orden final

  • 2º forma: usar comparator

Para esta forma, crearemos una clase vacia con el nombre que queramos, esta clase debera implementar la interfaz Comparator.

Esto nos obliga a crear el metodo compareTo, pero no es igual que el anterior, sino pasandole los dos objetos a comparar.

Por ejemplo:

En este caso lo ordeno por edad.

Ahora debemos hacer lo siguiente para ordenar:

Os dejo un ejemplo:

Orden original:

Orden final

Seguro os preguntareis cual es la diferencia entre ambos, los dos hacen lo mismo. Para mi la diferencia es que la segunda forma nos permite ordenar de varias formas y la primera forma de una.

Mi consejo es utilizar la segunda solo cuando queráis ordenar de varias formas, si solo vais de ordenar de una pues es mejor la primera.

Espero que os haya sido de ayuda. Si tenéis dudas, preguntad. Estamos para ayudarte.

Compartir

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *


Warning: Trying to access array offset on value of type null in /home2/discodur/public_html/discoduroderoer/wp-content/themes/disto/single.php on line 539