Ordenação de List

Dae galera do guj, estou com um problema eu preciso organizar um List pelo Status que esta no objeto, eu sei que eu vou ter que usar o Comparator e o Collections , mas agora como que eu vou comprar os status, tipo o usuario define o status que ela quer ordenar, dai eu tenho que colocar esse objeto que estao com esse status por primeiro.

Não sei se voce entenderão mas quem puder ajudar obrigado

Não entendi exatamente o que você quer.

Seria apenas ordenar os objetos java ?
Veja se esse post te ajuda: http://blog.caelum.com.br/ordenando-colecoes-com-comparable-e-comparator/

Ficou complicado de entender. O usuário vai determinar a ordem que os status devem aparecer? Nesse caso, uma ideia, é o teu objeto status ter um parâmetro chamado ordem, e o comparator utilizar ele pra ordenar a coleção.

Agora, se você tem várias ordenações pré-definidas e o usuário simplesmente deve escolher uma, você pode ter varias implementações de comparator.

eu quero ordenar a lista de acordo com o status que o usuario selecionar em um combobox

dá uma olhada no post que eu mandei.
Acredito que ele esteja bem explicado.

Tudo bem, o usuário escolhe qual deve aparecer primeiro, mas e o restante da ordenação, não tem nenhum critério?

Você pode implementar vários comparators, como eu sugeri antes. Um pra cada status que o usuário selecionar.

É assim eu tenho um lista de pedidos, o usuario pode escolher o tipo de ordenação da lista, por exemplo: No check box tem Liberado, Rejeitado e Liberado mas com Observações (Esse status tem um numero cada um) dai o usuario vai escolher qual desse status, e dai na lista ele vai ter que colocar em primeiro os objeto que tiverem o status igual ao selecionado

EDIT:
os outros não importa

Acredito que os itens serão mostrados em uma JTable!
Se for o caso, implemente o ObjectTableModel e TableFilter, assim o user faz a ordenação e filtro como ele quiser!!!

não é no Android isso

Foi mal… É que não tinha como saber!!!

Foi mal… É que não tinha como saber!!![/quote]

que isso num tem problema, agora eu entendi as classe, porem agora como que eu vou fazer para comprar o status de cada um por que esse metodos comprar um objeto com o proximo objeto mas eu preciso comprar um objeto com um status

Uma maneira é fazer os 3 comparators, um para cada campo, como o colega disse.
Agora você quer ordenar ou filtrar ?
Ou os dois ?

Faça um Comparator que você passa o parametro para ele ordenar e dentro do metodo compare você olha para o parametro.

[]'s

Esta frase não faz sentido. Não se ordena por um valor escolhido, se filtra por um valor escolhido.

Se eu tenho um conjunto de pessoas em uma lista com idade o que significa ordenar a ideia pelo valor 35 ? nada. não significa nada.
Agora, filtra pelo valor 35 significa só mostrar as pessoas com idade 35.

Dito isto, e entendida a diferença, é possivel ordenar por um campo dizendo qual é o primeiro e ordenando o resto em ordem aleatória.
Ou seja, no exemplo, “ordenar” por 35 significa “mostre os de 35 primeiro”.

Para fazer isso o comparator simplesmente faz um if. Se o valor do campo é o valor esperado, retorna 1 (este registro é maior que todos os outros) caso contrario, retorna 0 (este registro é igual a todos os outros). O algoritmo de sort irá colocar os objetos onde deu true no inicio mantendo os outros na ordem em que estavam.

Agora, na prática , isto não se faz. Se faz um filtro.

eu estou tentando fazer isso diretamente no banco de dados, qual quer coisa eu volto a perguntar aqui, valeu pela ajuda galera