w TreeMap sortowanie odbywa się wg kluczy mapy. Można by było ewentualnie zrobić coś takiego, ale nie wiem czy to Ci pasuje:
class Dane implements Comparable<Dane>{
private String imie;
private String nazwisko;
private Date data;
....
public String toString()
{
return imie + " " + nazwisko;
}
public int compareTo(Dane dane)
{
return data.compareTo(dane.data);
}
@Override
public boolean equals(Object obj) {
if (obj == null) {
return false;
}
if (getClass() != obj.getClass()) {
return false;
}
final Dane other = (Dane) obj;
if (this.imie != other.imie && (this.imie == null || !this.imie.equals(other.imie))) {
return false;
}
if (this.nazwisko != other.nazwisko && (this.nazwisko == null || !this.nazwisko.equals(other.nazwisko))) {
return false;
}
return true;
}
@Override
public int hashCode() {
int hash = 3;
hash = 97 * hash + (this.imie != null ? this.imie.hashCode() : 0);
hash = 97 * hash + (this.nazwisko != null ? this.nazwisko.hashCode() : 0);
return hash;
}
}
class Struct {
TreeMap<Dane, Dane> drzewo1 = new TreeMap<Dane, Dane> ();
TreeMap<Dane, Dane> drzewo2 = new TreeMap<Dane, Dane> ();
}