Hallo,
ich bin neu hier und hab leider das Problem eine Aufgabe ganz nicht zu verstehen.
Könnte mir jemand helfen und mir erklären wie ich die einzelnen Werte in der Liste
der folgenden Aufgabe ansteuern kann. Das habe ich immer noch nicht verstanden.
Wir sollen folgenden Quellcode um diese Funktionen erweitern:
E remove(int index) (Entfernt das Element an der spezifizierten Position in der Liste),
boolean remove(Object o) (Entfernt das erste Auftauchen des spezifizierten Elements aus der Liste, falls es vorhanden ist),
und int indexOf(Object o) ( Gibt den Index für das erste Auftauchen des gesuchten Elements in der Liste, odoer gibt -1 zurück wenn es nicht vorhanden ist.
ich bin neu hier und hab leider das Problem eine Aufgabe ganz nicht zu verstehen.
Könnte mir jemand helfen und mir erklären wie ich die einzelnen Werte in der Liste
der folgenden Aufgabe ansteuern kann. Das habe ich immer noch nicht verstanden.
Wir sollen folgenden Quellcode um diese Funktionen erweitern:
E remove(int index) (Entfernt das Element an der spezifizierten Position in der Liste),
boolean remove(Object o) (Entfernt das erste Auftauchen des spezifizierten Elements aus der Liste, falls es vorhanden ist),
und int indexOf(Object o) ( Gibt den Index für das erste Auftauchen des gesuchten Elements in der Liste, odoer gibt -1 zurück wenn es nicht vorhanden ist.
Java:
import java.lang.Iterable;
import java.util.Iterator;
public class LinkedList<E> implements List<E> {
private class Wrapper {
E e;
Wrapper succ;
Wrapper(E e){
this.e = e;
succ = null;
}
}
Wrapper first;
Wrapper last;
int size;
LinkedList(){
first = null;
last = null;
size = 0;
}
public boolean add(E e) {
Wrapper w = new Wrapper(e);
if (size == 0){
first = w;
last = w;
} else {
last.succ = w;
last = w;
}
size++;
return true;
}
public E get(int index) {
Wrapper wRun;
if (index < 0 || index >= size){
throw new IndexOutOfBoundsException();
}
wRun = this.first;
for (int iRun = 0; iRun < index; iRun++){
wRun = wRun.succ;
}
return wRun.e;
}
public int size() {
return size;
}
public Iterator<E> iterator() {
return new Iterator<E>(){
Wrapper next = first;
Wrapper current;
public boolean hasNext() {
return next != null;
}
public E next() {
current = next;
if (next != null){
next = next.succ;
}
return current.e;
}
public void remove() {
throw new UnsupportedOperationException();
}
};
}
public E remove(int index){
public boolean remove(Object o){
}
public int indexof(Object o){
}
}
Zuletzt bearbeitet von einem Moderator: