Duvida como ordenar em ordem crescente no List ....um objeto por atributo?

1 resposta
P

Caros,

uma duvida como colocar em ordem crescente na hora que está no List pois tenho varias ordenação por codigo,nome,tempo

E tenho três metodos que gera por nome,saldo e tempo…

Minha duvida como poderia ordenar no metodo abaixo pelo campo que quero por exemplo nome na hora que for ler a lista sair em ordem alfabetica . E tenho tambem que deixar em ordem de saldo e tempo…

Pois os metodos já estão criados com parametro List e teria que usar essa assinatura do metodo …

Se alguém puder me ajudar agradeceria…

abs

public class OrdenadorPorNome implements OrdenadorDeClientes {

	public OrdenadorPorNome() {
		// TODO Auto-generated constructor stub
	}

	public List<Cliente> ordena(List<Cliente> clientes) {
		// TODO Auto-generated method stub
		Cliente cliente ;
		List<Cliente> clientesOrdenados = new ArrayList<Cliente>();
		
		cliente = new Cliente("XXXXXXXXXXXXXX",100,100.99,1);
		clientesOrdenados.add(cliente);
		cliente = new Cliente("AAAAAAAAAAAAAAAAA",200,300.99,45);
		clientesOrdenados.add(cliente);
		cliente = new Cliente("DDDDDDDDDDDDDD",400,700.99,68);
		clientesOrdenados.add(cliente);
		//Arrays.sort(clientesOrdenados);
		return clientesOrdenados;
		
	}

}
public class Cliente {

	private int codigo;
	private String nome;
	private double saldo;
	private long tempo;
	
	
	public Cliente (String nome,int codigo,double saldo,long tempo){
		this.codigo=codigo;
		this.nome=nome;
		this.saldo=saldo;
		this.tempo=tempo;
	}
	
	public Cliente (int codigo,String nome,double saldo,long tempo){
		this.codigo=codigo;
		this.nome=nome;
		this.saldo=saldo;
		this.tempo=tempo;
	}
	public Cliente (double saldo,int codigo,String nome,long tempo){
		this.codigo=codigo;
		this.nome=nome;
		this.saldo=saldo;
		this.tempo=tempo;
	}
	public Cliente (long tempo,double saldo,int codigo,String nome){
		this.codigo=codigo;
		this.nome=nome;
		this.saldo=saldo;
		this.tempo=tempo;
	}

1 Resposta

ruilima
paribe:
Caros,

uma duvida como colocar em ordem crescente na hora que está no List pois tenho varias ordenação por codigo,nome,tempo

E tenho três metodos que gera por nome,saldo e tempo...

Minha duvida como poderia ordenar no metodo abaixo pelo campo que quero por exemplo nome na hora que for ler a lista sair em ordem alfabetica . E tenho tambem que deixar em ordem de saldo e tempo...

Pois os metodos já estão criados com parametro List e teria que usar essa assinatura do metodo ......

Se alguém puder me ajudar agradeceria...

abs

public class OrdenadorPorNome implements OrdenadorDeClientes {

	public OrdenadorPorNome() {
		// TODO Auto-generated constructor stub
	}

	public List<Cliente> ordena(List<Cliente> clientes) {
		// TODO Auto-generated method stub
		Cliente cliente ;
		List<Cliente> clientesOrdenados = new ArrayList<Cliente>();
		
		cliente = new Cliente("XXXXXXXXXXXXXX",100,100.99,1);
		clientesOrdenados.add(cliente);
		cliente = new Cliente("AAAAAAAAAAAAAAAAA",200,300.99,45);
		clientesOrdenados.add(cliente);
		cliente = new Cliente("DDDDDDDDDDDDDD",400,700.99,68);
		clientesOrdenados.add(cliente);
		//Arrays.sort(clientesOrdenados);
		return clientesOrdenados;
		
	}

}
public class Cliente {

	private int codigo;
	private String nome;
	private double saldo;
	private long tempo;
	
	
	public Cliente (String nome,int codigo,double saldo,long tempo){
		this.codigo=codigo;
		this.nome=nome;
		this.saldo=saldo;
		this.tempo=tempo;
	}
	
	public Cliente (int codigo,String nome,double saldo,long tempo){
		this.codigo=codigo;
		this.nome=nome;
		this.saldo=saldo;
		this.tempo=tempo;
	}
	public Cliente (double saldo,int codigo,String nome,long tempo){
		this.codigo=codigo;
		this.nome=nome;
		this.saldo=saldo;
		this.tempo=tempo;
	}
	public Cliente (long tempo,double saldo,int codigo,String nome){
		this.codigo=codigo;
		this.nome=nome;
		this.saldo=saldo;
		this.tempo=tempo;
	}

Boa noite Paribe você já esperimentou, utilize collections?

1. public class OrdenadorPorNome implements OrdenadorDeClientes {
2.
3. public OrdenadorPorNome() {
4. // TODO Auto-generated constructor stub
5. }
6.
7. public List<Cliente> ordena(List<Cliente> clientes) {
8. // TODO Auto-generated method stub
9. Cliente cliente ;
10. List<Cliente> clientesOrdenados = new ArrayList<Cliente>();
11.
12. cliente = new Cliente("XXXXXXXXXXXXXX",100,100.99,1);
13. clientesOrdenados.add(cliente);
14. cliente = new Cliente("AAAAAAAAAAAAAAAAA",200,300.99,45);
15. clientesOrdenados.add(cliente);
16. cliente = new Cliente("DDDDDDDDDDDDDD",400,700.99,68);
17. clientesOrdenados.add(cliente);
18. collections.sort(clientesOrdenados);
19. return clientesOrdenados;
20.
21. }
22.
23. }

Criado 27 de setembro de 2008
Ultima resposta 27 de set. de 2008
Respostas 1
Participantes 2