/** * Tester MyLinkedList et verifier que son comportement est * bien identique a celui de la classe standard java.util.LinkedList * @author felipe */ import java.util.*; public class ListeTest { /** * Affichage de la liste, difference ici car elements n'existe pas * dans la vrai classe. */ static void afficheListe(Object o) { if (o instanceof MyLinkedList) { Enumeration enum = ((MyLinkedList) o).elements(); System.out.print(""); while (enum.hasMoreElements()) { System.out.print(" " + ((Integer) enum.nextElement()).intValue()); } System.out.println(""); } else { ListIterator li = ((LinkedList) o).listIterator(0); System.out.print(""); while (li.hasNext()) { System.out.print(" " + li.next()); } System.out.println(""); } } /** * Jeu de main jeux de vilain */ static public void main(String [] args) { // la version avec MyLinkedList LinkedList l = new LinkedList(); for (int i=0; i<7; i++) l.addFirst(new Integer(i)); for (int i=0; i<7; i++) l.addLast(new Integer(i)); System.out.println("Size=" + l.size()); System.out.println("valeur de tete=" + l.getFirst()); System.out.println("valeur de queue=" + l.getLast()); System.out.println("elt 4=" + l.get(4)); System.out.println("elt 6=" + l.get(6)); System.out.println("elt 11=" + l.get(11)); System.out.println("is 3 in the list ? " + l.contains(new Integer(3))); afficheListe(l); l.removeFirst(); l.removeLast(); System.out.println("Size=" + l.size()); afficheListe(l); System.out.println("Suppression de elt 5=" + l.remove(5)); afficheListe(l); l.add(5,new Integer(35)); l.add(0,new Integer(34)); l.add(l.size(),new Integer(36)); afficheListe(l); // la version avec MyLinkedList System.out.println("==========================="); MyLinkedList l2 = new MyLinkedList(); for (int i=0; i<7; i++) l2.addFirst(new Integer(i)); for (int i=0; i<7; i++) l2.addLast(new Integer(i)); System.out.println("Size=" + l2.size()); System.out.println("valeur de tete=" + l2.getFirst()); System.out.println("valeur de queue=" + l2.getLast()); System.out.println("elt 4=" + l2.get(4)); System.out.println("elt 6=" + l2.get(6)); System.out.println("elt 11=" + l2.get(11)); System.out.println("is 3 in the list ? " + l2.contains(new Integer(3))); afficheListe(l2); l2.removeFirst(); l2.removeLast(); System.out.println("Size=" + l2.size()); afficheListe(l2); System.out.println("Suppression de elt 5=" + l2.remove(5)); afficheListe(l2); l2.add(5,new Integer(35)); l2.add(0,new Integer(34)); l2.add(l2.size(),new Integer(36)); afficheListe(l2); } // main }