Warum nicht treeMap.entrySet () und treeMap.keySet () -Methoden geben zurück SortedSet ? Ich könnte so weit gehen zu sagen, dass das ein Fehler ist. Gemäß der API Set ist definiert als keine bestimmte Reihenfolge zu haben. Die von TreeMap do zurückgegebenen Mengen haben jedoch eine bestimmte Reihenfolge.
Ich denke, wenn sie jetzt die Schnittstelle SortedMap
geschrieben haben, würden sowohl keySet
als auch entrySet
SortedSet
zurückgeben. Die Schnittstelle SortedMap
wurde jedoch in Java 1.2 eingeführt, bevor kovariante Rückgabetypen zulässig waren. Sie können dies jetzt nicht ändern, da es Implementierungen von SortedMap
gibt, für die keySet
und entrySet
eine Set
zurückgibt, die nicht a SortedSet
ist.
Tags und Links java collections