> Das neue Objekt sollte dann aber auch den passenden Typ bekommen und
> keine "ungetypte" Version.
Also:
1 | LinkedList<? extends Comparable> sorted = new LinkedList()<? extends Comparable>;
|
?
Dann kommt die Fehlermeldung "illegal start of expression" oder "not a
statement".
Ansonsten heißt die Fehlermeldung "cannot find method:
add(Java.lang.Comparable)". Die Methode gibt es sehr wohl und die
erwartet in diesem Fall auch ein Objekt, welches "Comparable"
implementiert.
Der Rumpf der Methode takeMin lautet
1 | public static <T extends Comparable> T takeMin(LinkedList<T> list)
|
Also gibt sie doch im Prinzip ein passendes Objekt an add(...) zurück.
> Und warum sträubst du dich weiterhin die bereits fertigen,
> funktionierenden und sehr viel effizienteren Funktionen der Collections
> API zu benutzen?
Mir geht es ja nicht darum, ein möglichst einfaches und effizientes
Programm zu schreiben. Ich will lernen, wie man mit generische
Datentypen umgeht.