:: Enseignements :: ESIPE :: E4INFO :: 2009-2010 :: Java Avancé ::
[LOGO]

Map, list, iterable et iterateur


Exercice 1 - Prendre de la hauteur

Soit la classe fr.umlv.td.author.Author :

Exercice 2 - Interval

On souhaite pouvoir écrire le code suivant :

  1. Quel est le profil de la méthode rangeIterator ?
  2. Implanter de cette méthode en utilisant une classe anonyme.
On souhaite maintenant pouvoir écrire le code suivant :

  1. Quel est le profil de la méthode range ?
  2. Écrire une implantation utilisant la méthode rangeIterator ainsi qu'une version en une seule méthode.
  3. Combien le code donné en exemple effectue-t-il d'allocations ?
    Et le code ci-dessous ?

Exercice 3 - J'en veux plus

On cherche à implanter la méthode twice qui prend une liste d'entiers et qui renvoie une nouvelle liste contenant les valeurs de la liste multipliées par deux.

  1. Implanter la méthode twice .
  2. Changer l'implantation pour allouer moins d'éléments en utilisant le concept de vue.
    Pour l'implantation, regarder du côté de java.util.AbstractList .
  3. Quel est le problème de votre implantation dans le cas d'un appel à twice avec une LinkedList ?
    Tester avec le code suivant :

  4. Changer l'implantation de twice en fonction du fait que la liste prise en paramètre implante ou non java.util.RandomAccess .