yay
parent
6262cd6cf6
commit
87aca7f523
|
@ -5,14 +5,14 @@
|
|||
* @author (Ihr Name)
|
||||
* @version (eine Versionsnummer oder ein Datum)
|
||||
*/
|
||||
public class LinkedList
|
||||
public class LinkedList<T> // T muss immer in der Klasse gennant werden
|
||||
{
|
||||
private Node start;
|
||||
private Node<T> start; //Node<T> braucht auvh Datentyp T
|
||||
public LinkedList(){
|
||||
|
||||
}
|
||||
|
||||
public void einfuegen(int zahl){
|
||||
public void einfuegen(T zahl){
|
||||
// Lege einen neuen Knoten an mit der Zahl
|
||||
Node neu = new Node();
|
||||
neu.wert = zahl;
|
||||
|
@ -48,7 +48,7 @@ public class LinkedList
|
|||
|
||||
public String toString(){
|
||||
//Ergebnis
|
||||
String result = " ";
|
||||
String result = "";
|
||||
//beginne vorn
|
||||
Node current = this.start;
|
||||
while (current != null){ //sollange ein Element exisitiert
|
||||
|
@ -59,18 +59,28 @@ public class LinkedList
|
|||
return result;
|
||||
}
|
||||
|
||||
public int erste(){
|
||||
public T erste(){ //kein Rückgabetyp int mehr sondern T
|
||||
if (this.start == null){
|
||||
return 0;
|
||||
return null;
|
||||
}
|
||||
int tmp = this.start.wert; //abspeichern des ersten in eine Variable tmp
|
||||
T tmp = this.start.wert; //abspeichern des ersten in eine Variable tmp
|
||||
this.start = this.start.next; //damit start beim nächsten ist und mann dann den ersten löschen kann
|
||||
|
||||
return tmp;
|
||||
}
|
||||
|
||||
public int getNteZahl(){
|
||||
return 0;
|
||||
public T getNteZahl(int n){ //position ist immer int!
|
||||
Node<T> current = this.start; //starte vorne
|
||||
|
||||
for ( int i = 0; i<n; i++){ //mache n Schritte
|
||||
if (current==null) return null;
|
||||
|
||||
current = current.next;
|
||||
}
|
||||
|
||||
if (current == null) return null;
|
||||
|
||||
return current.wert;//gib den wert zurück
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -5,13 +5,13 @@
|
|||
* @author (Ihr Name)
|
||||
* @version (eine Versionsnummer oder ein Datum)
|
||||
*/
|
||||
public class Node
|
||||
public class Node <T> //T für Typ und die Variable die wir hsben möchten (also int,string,...)
|
||||
{
|
||||
public int wert;
|
||||
public T wert;
|
||||
public Node next;
|
||||
|
||||
public void setWert(int w){
|
||||
this.wert = w;
|
||||
public void setWert(T w){ //statt int T damit es allgemeiner ist
|
||||
this.wert = w;
|
||||
}
|
||||
|
||||
public void setNext(Node n){
|
||||
|
|
27
Test2.java
27
Test2.java
|
@ -8,17 +8,36 @@
|
|||
public class Test2
|
||||
{
|
||||
public static void test(){
|
||||
LinkedList l= new LinkedList();
|
||||
LinkedList<Integer> l= new LinkedList<Integer>();
|
||||
|
||||
l.einfuegen(4);
|
||||
l.einfuegen(8);
|
||||
l.einfuegen(3);
|
||||
l.einfuegen(17);
|
||||
|
||||
System.out.println(l);
|
||||
System.out.println(l); // gibt 4,8,3,17
|
||||
|
||||
System.out.println(" " + l.erste()); //"" nur damits schöner aussieht :)
|
||||
System.out.println(l.erste()); // gibt 4 aus
|
||||
|
||||
System.out.println(l);
|
||||
System.out.println(l); // gibt 8,3,17 aus
|
||||
|
||||
System.out.println(l.getNteZahl(2)); // gibt an 2.Stelle wert = 4 aus
|
||||
|
||||
System.out.println(l.getNteZahl(23)); // gibt 0 aus weil Liste nicht so lang ist
|
||||
|
||||
LinkedList<String> 12= new LinkedList<Strings>();
|
||||
12.einfuegen("Hallo");
|
||||
12.einfuegen("Welt");
|
||||
|
||||
System.out.println(12);
|
||||
}
|
||||
public static void test2(){
|
||||
Node<String> n = new Node<String>(); // <String> ersetzt <T> mit Datentyp den wir für die Variable haben möchte
|
||||
|
||||
n.wert = "Hallo";
|
||||
|
||||
Node<Integer> i = new Node<Integer>();
|
||||
|
||||
i.wert = 5;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue