# LinkedList richtig Implementiert?



## JDownHD (10. Jan 2013)

Hallo,

mein Ziel:
Ich habe eine Klasse Student:

```
class StudentA6{
	private String name, matrikelNr;
	
	public StudentA6 (String name, String matrikelNr){
		this.name=name;
		this.matrikelNr=matrikelNr;
	}
	public String getName(){
		return name;
	}
	public String getMatrikelNr(){
		return matrikelNr;
	}
}
```

Und eine Klasse Praktikum, sie enthält das Attribut name, in das der name des praktikums gespeichert wird, sowie eine LinkedList aus Studenten. Hier werden für jedes Praktikum die Studenten gespeichert, die sich für das Praktikum angemeldet haben.
Neben den beiden Attributen enthält die Klasse einen parameterlosen Konstruktor. Hier wird dei LinkedList angemeldet erzeugt. Außerdem hat die Klasse get-Methoden für beide Attribute sowie eine Methode anmelden(). Die Methode anmelden() bekommt einen Studenten übergeben und trägt diesen in die LinkedList angemeldet ein.

Mein Code bist dahin:

```
import java.util.*;

class PraktikumA6{
	private String name;
	private LinkedList<StudentA6> angemeldet = new LinkedList<StudentA6>();
	
	public PraktikumA6(){
	}
	
	public void setName(String name){
		this.name=name;
	}
	public String getName(){
		return name;
	}
	public String getAngemeldet(){
		return LinkedList<StudentA6>;
	}
	
	public anmelden (String s){
		angemeldet.addFirst(s);
	}
}
```

Ich bin mir nicht sicher, ob die LinkedList vernünftig eingefügt ist.
Habe noch nie mit eine LinkedList gearbeitet...


----------



## SlaterB (10. Jan 2013)

ein Compiler wird dir doch schon einige Fehler zeigen

'LinkedList richtig Implementiert?' klingt auch bisschen hochtrabender,
als hättest du die Listen-Klasse selbst geschrieben (häufige Übungsaufgabe) statt sie nur einzubauen


----------



## nillehammer (10. Jan 2013)

Dass das so nicht kompiliert, hat SlaterB ja schon geschrieben. Es ist darüber hinaus leider anhand des Codes nicht erkennbar, was Du *haben willst*:

```
public String getAngemeldet(){
        return LinkedList<StudentA6>;
}
```
Der Name klingt danach, dass das ein normaler getter für die Instanzvariable 
	
	
	
	





```
angemeldet
```
 sein soll. Falls das so ist, schau Dir mal die anderen get-Methoden an, dort machst du es ja richtig.

Allerdings passt der return-Typ String nicht so recht zur obigen Vermutung. Willst du vielleicht doch etwas anderes?

Und nächstes Problem:

```
public anmelden (String s){
  angemeldet.addFirst(s);
}
```
Du hast eine Liste von StudentA6 definiert, also kannst Du in dieser Liste auch nur StudentA6-Instanzen speichern bzw. aus ihr herausholen, also keine Strings.


----------

