Ich habe ein kleines Problem. Ich habe eine einfach verkette Liste erstellt, die auch funktioniert, will ich diese ausgeben wird mir ganz am Schluss ein null mit ausgegeben. Kann man das irgendwie verhindern?
Die Haupt Liste:
ListElement:
Die size wird mir auch richtig ausgegeben. Füge ich beispielsweise die Worte: "Tennis" "Fußball" "Hockey" ein, wird mir folgendes ausgegebenen:
Tennis, Fußball, Hockey, null size=3
Das null möchte ich jedoch nicht ausgeben.
Die Haupt Liste:
Java:
public class List <T>{
T element;
List<T> next = null;
public List(T element) {
this.element = element;
}
public T getElement() {
return element;
}
public void setElement(T element) {
this.element = element;
}
public List<T> getNext() {
return next;
}
public void setNext(List<T> next) {
this.next = next;
}
@Override
public String toString() {
return element + "," + next;
}
}
ListElement:
Java:
public class ListElement<T> implements IList{
List<T> head = null;
List<T> tail = null;
int size;
public ListElement() {
}
public void add(T data){
List<T> obj=new List<>(data);
if (head==null){
obj.next=null;
head=obj;
tail=obj;
}else{
tail.next=obj;
obj.next=null;
tail=obj;
}
size++;
}
@Override
public boolean isEmpty() {
return size==0;
}
@Override
public T head() {
return this.head.getElement();
}
@Override
public IList tail() {
ListElement k1 = new ListElement();
for (int i=1; i<this.size; i++){
k1.add(head.next.getElement());
this.head=head.getNext();
}
return k1;
}
@Override
public int size() {
return size;
}
@Override
public IList filter(ISelect filterPredicate) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
public ListElement<T> next(){
ListElement l1=new ListElement();
l1.head=head.getNext();
l1.size=size;
return l1;
}
@Override
public String toString() {
return head + " "+ "size=" +size;
}
}
Die size wird mir auch richtig ausgegeben. Füge ich beispielsweise die Worte: "Tennis" "Fußball" "Hockey" ein, wird mir folgendes ausgegebenen:
Tennis, Fußball, Hockey, null size=3
Das null möchte ich jedoch nicht ausgeben.