Mám objekt, ktorý obsahuje ArrayList objektov typu osoba.
Tento ArrayList by som potreboval usporiadať podľa priezvisk osôb.
Robím to pomocou interface Comparable. ArrayList som previedol na List. Problém mám ten, že neviem ako zapísať metódu compareTo aby to fungovalo. Skúšal som už všetko možné ale vždy nejaký error.
Díky
Kód: Vybrať všetko
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
public class Kolekcie implements Comparable<Osoba> {
ArrayList<Osoba> zozCestujucich = new ArrayList();
public void urobRezervaciu(String meno, String priezv, int vek){
this.zozCestujucich.add(new Osoba(meno, priezv, vek));
}
public void getZoznamCestujucich(){
Osoba pom;
for(int i=0; i<this.zozCestujucich.size(); i++){
pom = this.zozCestujucich.get(i);
pom.getInfo();
}
}
public int compareTo(Osoba o) {
}
public static void main(String[] args) {
Kolekcie test = new Kolekcie();
test.urobRezervaciu("Robert", "Fico", 35);
test.urobRezervaciu("Mikulas", "Dzurinda", 40);
test.urobRezervaciu("Robert", "Kalinak", 45);
test.urobRezervaciu("Daniel", "Lipsic", 50);
test.urobRezervaciu("Vladimir", "Meciar", 55);
test.urobRezervaciu("Jan", "Slota", 60);
test.urobRezervaciu("Pavol", "Hrusovsky", 65);
test.urobRezervaciu("Viera", "Tomanova", 70);
List list = Arrays.asList(test.zozCestujucich);
Collections.sort(list);
test.getZoznamCestujucich();
}
}Kód: Vybrať všetko
public class Osoba {
String meno;
String priezv;
int vek;
public Osoba(String meno, String priezv, int vek){
this.meno=meno;
this.priezv=priezv;
this.vek=vek;
}
public void getInfo(){
System.out.println(this.meno+" "+this.priezv+" "+this.vek);
}
}