Pegar a menor data dentro de list (RESOLVIDO)

6 respostas
adsadilson

Boa tarde galera, estou precisando de uma ajuda de vcs, é seguinte eu tenho a lista de objeto com vários registro onde nesse registro eu tenho os atributos emissão, vencimento e outros, preciso pegar a menor data de emissão e a maior data de vencimento q se encontra dentro dessa lista, alguém pode me da uma ajudinha de como resolver isso.
Obrigado a todos por sua colaboração e um forte abraço.

6 Respostas

regis_hideki

O que você já tentou fazer e não deu certo?

G

é, sem saber o que você está fazendo fica dificil mas no geral:

http://docs.oracle.com/javase/7/docs/api/java/util/Collections.html
http://docs.oracle.com/javase/7/docs/api/java/util/Date.html
http://docs.oracle.com/javase/7/docs/api/java/lang/Comparable.html

Procure ver algo sobre a CLASSE Collections e seus métodos.

adsadilson

Bom dia caro colega regis_hideki, infelizmente eu não sei pra onde vai ou da uma olhada nos link a baixo q o gejava mais obrigado por sua atenção.

adsadilson

Bom dia gejava e regis_hideki, consegui realizar o meu objetivo muito obrigado por suas colaborações foi de grande importância para a resolução do meu problema abaixou vou explicar como eu fiz caso vcs sabe fazer de outra forma mais simples fique a vontade para comenta.

1º implementei a interface Comparable
@Override
    public int compareTo(MovtoContas t) {
        return this.data.compareTo(t.data);
    }
2º usei o Collections.sort(listaContas); para organizar a lista 3º percorrei a lista pegando a menor data de emissão e a ultima data de vencimento
Collections.sort(listaContas);
        if (listaContas.size() > 0) {
            MovtoContas mc = listaContas.get(0);
            MovtoContas m = listaContas.get(listaContas.size() - 1);
            
            System.out.println("primeiro registro:" + mc.getEmissao());
            System.out.println("\nultimo registro:" + m.getVencto());
        }
G

adsadilson fico feliz por ter lido sobre:

tem um metodo na Collections:

min(Collection<? extends T> coll) max(Collection<? extends T> coll)

acho que tambem atendem.

adsadilson

gejava:
adsadilson fico feliz por ter lido sobre:

tem um metodo na Collections:

min(Collection<? extends T> coll) max(Collection<? extends T> coll)

acho que tambem atendem.

Bom dia gejava, tentei usa esse método q vc passou ai mais não estou conseguindo esta pegando a data errada abaixa deixo o método como estou utilizado, ver se é assim mesmo ou onde estou errado, deste já muito obrigado por sua atenção.

System.out.println("data: "+Ulti.dt.format(Collections.max(obj).getVencimento()));
Criado 1 de agosto de 2014
Ultima resposta 12 de ago. de 2014
Respostas 6
Participantes 3