segunda-feira, 25 de julho de 2011

Collection, diferença entre Ordenado e Classificado

Continuando com alguns assuntos que fazem parte da prova SCPJ, nesse post vou falar sobre a diferença entre Ordenado e Classificado.

Ordenado (Ordered) - É a ordem em que os elementos do conjunto serão mostrados na tela ao ser iterado. Um ArrayList é ordenado pela posição do índice. LinkedHashSet mantem a ordem estabelecida pela posição, o ultimo elemento a ser inserido sera o ultimo elemento do conjunto, diferentemente do ArrayList que você pode inserir um elemento em um índice especifico. Alguns conjuntos mantém a ordem natural dos elementos, esses conjuntos não são apenas ordenados, mas também classificados.

Classificados (Sorted) - Um conjunto classificado significa que a ordem do conjunto está determinada por alguma(s) regra(s), conhecida(s) como ordem de classificação. Semelhante ao order by do SQL.
A classificação é feita com base em propriedades do próprio objeto. Na maioria das vezes a ordem é feita utilizando a ordem natural, que nada mais é que a ordem alfabética para String e ordem numérica crescente para objetos Integer, porem e para Objetos do tipo por exemplo Cliente? Não existe uma ordem naturam para esse objeto, pelo menos até que o desenvolvedor crie uma, por meio do Comparator ou Comparable (você pode saber mais sobre elas clicando aqui e aqui)

Nenhum comentário:

Postar um comentário