On cherche à écrire une méthode statique qui transforme un
NavigableSet en
List
(l'ordre de la liste est l'ordre du navigable set (qui est un
SortedSet))
de telle façon à ce que si l'on modifie le navigable set après l'appel à la méthode
asList,
la liste renvoyée soit elle aussi modifiée (La liste modifiée doit agir comme une vue donc).
On cherchera une première implantation qui renvoie une liste non modifiable puis dans un second
temps (en utilisant la même classe), à ce que les modifications sur la liste modifie aussi
le navigable set.
Mais avant pour vous aider quelque questions, pour vous aider un petit peu,
pas besoin d'y répondre formellement, le code de la méthode
asList me suffira :
-
Que peut on dire sur l'ordre des élement d'un navigable set ?
Quel ordre est utiliser si le comparator est null ?
-
A quoi servent les méthodes lower, higher, et les méthodes
first et last de l'interface java.util.NavigableSet ?
-
Quelle est la différence entre une AbstractList et une AbstractSequentialList ?
-
Il manque les chevrons dans la signature de la méthode asList, ajouter les !
-
Que doit renvoyer asList si le navigable set est null ?
-
Ecrivez une version de asList qui renvoie une vue non modifiable de la liste.
Toutes les méthodes des tests unitaires avant iteratorRemove doivent être au vert.
-
Modifié votre code pour qu'il soit possible de supprimer un élement de la liste.
-
Modifié votre code pour qu'il soit possible de changer un élément de la liste,
comme la liste doit rester triée, on ne pourra remplacer un élément que par un élément compatible
c-a-d, un élément, qui n'est pas plus petit que l'élément précédent de celui que l'on essaye
de remplacer et pas plus grand que celui que l'on essaye de remplacer.
-
Modifié votre code pour qu'il soit possible d'ajouter un élement à la liste,
de même, la liste devra rester triée.