Hallo,
danke für die Antwort.
Ich hab mich dann in der Zwischenzeit mal selber bemüht und eine Implementierung einer doppelt verketteten Liste vorgenommen.
Teilweise schon getestet sollte das meinen Ansprüchen genügen.
Mein Datentyp(Datensatz) sieht so aus:
public class Datensatz {
private int Id, Econ, Fleet, Tech, Exp, Acc;
private String Player;
private double Lvl;
public void setId(int x) { Id=x; }
public void setEcon(int x) { Econ=x; }
public void setFleet(int x) { Fleet=x; }
public void setTech(int x) { Tech=x; }
public void setExp(int x) { Exp=x; }
public void setAcc(int x) { Acc=x; }
public void setPlayer(String s) { Player=s; }
public void setLvl(double l) { Lvl=l; }
public int getId() { return Id; }
public int getEcon() { return Econ; }
public int getFleet() { return Fleet; }
public int getTech() { return Tech; }
public int getExp() { return Exp; }
public int getAcc() { return Acc; }
public String getPlayer() { return Player; }
public double getLvl() { return Lvl; }
}
Ein Element meiner Liste sieht so aus:
public class Element {
private Object obj;
private Element prev;
private Element next;
public Element() { obj=prev=next=null; }
public Element(Object ob) { obj=ob; prev=null; next=null; }
public void setObject(Object ob) { obj=ob; }
public void setPrev(Element x) { prev=x; }
public void setNext(Element x) { next=x; }
public Object getObject() { return obj; }
public Element getPrev() { return prev; }
public Element getNext() { return next; }
}
Die Liste selbst sieht so aus:
public class Liste{
private Element first;
private Element last;
public Liste(){ first=last=null; }
public Object getFirst(){ return first; }
public Object getLast() { return last; }
public void insert(Object ob){
Element neu = new Element(ob);
if(first==null) { first=last=neu; }
else {
last.setNext(neu);
neu.setPrev(last);
last=neu;
}
}
public int length(){
if(first==null) return 0;
if(first==last) return 1;
else{
int i=1;
Element temp=first;
while(temp.getNext()!=null){
temp=temp.getNext();
i++;
}
return i;
}
}
}
Zur Liste könnte ich noch ein Interface machen. Hab das in meinen Unterlagen gefunden. Kann mir dazu bitte jemand erklähren, wozu soein Interface gut ist? Werden darin nur die Methoden deklatiert, die in
Liste
zur Verfügung stehen?