Dovrebbe essere più o meno cosi
codice:
import java.util.*;
public class Evento implements Comparable{
private String data;
private String tipoEvento;
private DataPoint dp;
public Evento(String d, String tipo, DataPoint datapoint) {
this.data = d;
this.tipoEvento = tipo;
this.dp=datapoint;
}
public String getData(){
return this.data;
}
//questo me lo ha aggiunto in automatico NetBeans quando ho messo "implements" nella //dichiarazione della classe
public int compareTo(Object o) {
SimpleDateFormat formatoData = new SimpleDateFormat("dd/MM/YYYY"); //qui ci va il pattern del formato della data che utilizzi
Date data1 = new Date();
Data data2 = new Date();
try {
Evento b =(Evento)o;
data1 = formatoData.parse(b.getData());
data2=formatoData.parse(this.data);
} catch (ParseException ex1) {
//Tuo codice per gestire l'eccezione
}
return data1.compareTo(data2);
}
}
dopo di che puoi utilizzare questo codice nel main (o nella classe che utilizzi)
codice:
TreeSet<Eventi> set = new TreeSet<Eventi>();
for(Eventi ev: tualLista){
set.add(ev);
}
//oppure se la lista che utilizzi implementa collection (come Vector)
set.addAll(tuaLista);
A questo punto set è la tua lista ordinata per data