akimmig 2023-01-16 12:41:50 +01:00
parent e4e0712be5
commit fe6626297f
1 changed files with 34 additions and 0 deletions

View File

@ -1,13 +1,29 @@
public class List<T>
{
/**
* erster Eintrag der Liste
*/
public Node<T> first;
/**
* Konstruktor
*/
public List() {}
/**
* Überprüft, ob die Liste leer ist
*
* @return true, wenn keine Elemente in der Liste
*/
public boolean isEmpty() {
return first == null;
}
/**
* Berechnet die Größe der Liste
*
* @return Anzahl der Elemente in der Liste
*/
public int size() {
Node<T> current = first;
int laenge = 0;
@ -20,6 +36,10 @@ public class List<T>
return laenge;
}
/**
* Gibt das Element an der n-ten Stelle zurück, oder null
* falls die Liste kürzer ist
*/
public T get(int n) {
Node<T> current = first;
@ -32,6 +52,9 @@ public class List<T>
return current.wert;
}
/**
* Fügt ein neues Element am Ende der Liste ein
*/
public void add(T neu) {
Node n = new Node<T>(neu); // Neue Node mit Zahl "neu" anlegen
@ -53,6 +76,10 @@ public class List<T>
}
}
/**
* Fügt ein neues Element an der Stelle n in die Liste ein
* oder am Ende, falls die Liste kürzer ist.
*/
public void add(int n, T wert) {
// Neue Node anlegen
Node<T> neu = new Node<T>(wert);
@ -79,6 +106,9 @@ public class List<T>
}
}
/**
* Überprüft, ob die Liste einen konkreten Wert enthält
*/
public boolean contains(T wert) {
Node<T> current = first;
@ -91,6 +121,10 @@ public class List<T>
return false;
}
/**
* Löscht das Element an der Stelle n und gibt
* dessen Wert zurück
*/
public T remove(int n) {
if (n >= size()) return null;