Lista de Java:
Si usted no tiene tal requisito de que usted tiene que mantener duplicado o no. Entonces puede usar List en lugar de Set.
La lista es una interfaz en el marco de recopilación. Que extiende la interfaz de Colección. y ArrayList, LinkedList es la implementación de la interfaz de lista.
Cuándo utilizar ArrayList o LinkedList
ArrayList: Si usted tiene tal requisito de que en su aplicación sobre todo el trabajo está accediendo a los datos. Entonces deberías ir por ArrayList. porque ArrayList implementa la interfaz RtandomAccess, que es la interfaz de marcador. debido a la interfaz Marray, ArrayList tiene capacidad para acceder a los datos en O (1) vez. y puede usar ArrayList sobre LinkedList donde desea obtener datos de acuerdo con el orden de inserción.
LinkedList: Si tiene tal requisito que su trabajo mayoritario es la inserción o eliminación. Entonces debería usar LinkedList sobre ArrayList. porque en LinkedList, la inserción y la eliminación se producen en O (1) tiempo, mientras que en ArrayList es O (n) hora.
Java Set:
Si usted tiene requisito de la aplicación que no desea que los duplicados. Entonces deberías buscar Set en lugar de List. Porque Set no almacena ningún duplicado. Porque Set funciona según el principio de Hashing. Si agregamos un objeto en Set, primero verifica el hashCode del objeto en el cubo si encuentra que hay presente un hashCode en él, entonces no agregará ese objeto.
Si ya tiene algún mecanismo que garantice la unicidad, ¿por qué molestarse con el conjunto? Si no lo hace y necesita garantizar la exclusividad, entonces una lista definitivamente no es lo que quiere. – Andrew