FrazeColder
Lt. Commander
- Registriert
- Okt. 2013
- Beiträge
- 1.721
Hey Community,
Ich komme irgendwie mit dem next und dem vorgängerZeiger nicht klar...
Mir ist es ein rätsel, woher eclipse wissen soll, welches Elemen next sein soll und welches das Vorgänger sein soll...
Zudem habe ich in der Methode append das Problem, dass sich, nur wenn er in den Else-Zweig springt, die Node immer wieder selber überschreibt und nicht auf die nächste zeigt...
Und wenn es in den if-Zweig springt, hat dieses Element kein next bzw es ist null...
Wo sind meine Fehler...
Hier mal mein Code:
MfG und Danke
Ich komme irgendwie mit dem next und dem vorgängerZeiger nicht klar...
Mir ist es ein rätsel, woher eclipse wissen soll, welches Elemen next sein soll und welches das Vorgänger sein soll...
Zudem habe ich in der Methode append das Problem, dass sich, nur wenn er in den Else-Zweig springt, die Node immer wieder selber überschreibt und nicht auf die nächste zeigt...
Und wenn es in den if-Zweig springt, hat dieses Element kein next bzw es ist null...
Wo sind meine Fehler...
Hier mal mein Code:
Code:
package Listen;
public class Liste<E> {
private Link<E> anfang;
private Link<E> ende;
private Link<E> vorgeangerZeiger;
public Liste() {
}
public Link<E> naechstesElement() {
return vorgeangerZeiger.getNext();
}
public void setzeAktuellerZeigerZurueck() {
}
public void insertElement(Link<E> oneNode) {
Link<E> prevousListElement = vorgeangerZeiger;
Link<E> nextListElement = vorgeangerZeiger.getNext().getNext();
prevousListElement.setNext(oneNode);
prevousListElement.getNext().setNext(nextListElement);
}
public void removeElement(Link<E> oneNode) {
Link<E> nextListElement = oneNode.getNext();
vorgeangerZeiger.setNext(oneNode);
vorgeangerZeiger.getNext().setNext(nextListElement);
}
public void append(Link<E> oneNode) {
if (isListEmpty() == true) {
anfang = oneNode;
} else {
oneNode.setNext(vorgeangerZeiger);
ende = oneNode;
}
oneNode.setNext(ende);
// ende.setNext(vorgeangerZeiger);
}
public boolean searchElement(Link<E> oneNode) {
Link<E> helper = anfang;
while (helper != oneNode) {
helper = helper.getNext();
}
if(helper == oneNode){
return true;
}else{
return false;
}
}
public boolean isListEmpty() {
return anfang == null;
}
public static void main(String[] args){
Liste<String> liste = new Liste<String>();
liste.append(new Link<String>("1"));
liste.append(new Link<String>("2"));
liste.append(new Link<String>("3"));
liste.append(new Link<String>("4"));
}
}
Code:
package Listen;
public class Link<E> {
private E data;
private Link<E> next;
public Link(E data) {
this.data = data;
}
public E getData() {
return data;
}
public void setData(E data) {
this.data = data;
}
public Link<E> getNext() {
return next;
}
public void setNext(Link<E> next) {
this.next = next;
}
}
MfG und Danke