[JAVA]trier un tableau sans comparable ni compareTo

trier un tableau sans comparable ni compareTo [JAVA] - Java - Programmation

Marsh Posté le 13-09-2006 à 09:48:38    

Bonjour,
 
J'aimerais savoir comment peux t-on trier un objets (ici tableau de type Object) sans utiliser compareTo et un comparable...
Dans ce tableau il peut y avoir des string, int, double, float.....
 
Ex :  
 
public static void main(String arg[]) {
   
 Video[] tab = {
 new Video("Le jour le plus long", "Ken Annakin", 1962),
 new Video("Un pont trop loin", "Richard Attenborough", 1977),
 new Video("Platoon", "Oliver Stone", 1986),
 new Video("Full metal jacket", "Stanley Kubrik", 1987),
 new Video("La ligne rouge", "Terrence Malick", 1998),
 new Video("La ligne rouge", "David Malick", 1998),
 new Video("La ligne rouge", "David Malick", 1995),
 new Video("The patriot", "Roland Emmerich", 2000),
            };
 
Merci d'avance

Message cité 1 fois
Message édité par golfiste51 le 13-09-2006 à 09:55:36
Reply

Marsh Posté le 13-09-2006 à 09:48:38   

Reply

Marsh Posté le 13-09-2006 à 11:17:27    

Citation :

des string, int, double, float


 
c'est possible ça ? je pense pas.
 
sinon, interface Comparator et Arrays.sort(Object[] a, int fromIndex, int toIndex, Comparator c)


---------------
HFR - Mes sujets pour Chrome - Firefox - vérifie les nouveaux posts des topics suivis/favoris
Reply

Marsh Posté le 13-09-2006 à 11:57:33    

golfiste51 a écrit :


J'aimerais savoir comment peux t-on trier un objets (ici tableau de type Object) sans utiliser compareTo et un comparable...


ca sert à quoi de se fixer ce genre de contraintes ???  :heink:

Reply

Marsh Posté le 13-09-2006 à 12:04:19    

benou a écrit :

ca sert à quoi de se fixer ce genre de contraintes ???  :heink:


 
Bah c'est un excercice demandé... petite mise à jour :
 
public static void main(String arg[]) {
   
                 ArrayList tab = new ArrayList();
     tab.add(new Video("Le jour le plus long", "Ken Annakin", 1962));
     tab.add(new Video("Un pont trop loin", "Richard Attenborough", 1977));
     tab.add(new Video("Platoon", "Oliver Stone", 1986));
     tab.add(new Video("Full metal jacket", "Stanley Kubrik", 1987));
        tab.add(new Video("La ligne rouge", "Terrence Malick", 1998));
        tab.add(new Video("La ligne rouge", "David Malick", 1998));
                 tab.add(new Video("La ligne rouge", "David Malick", 1995));
        tab.add(new Video("The patriot", "Roland Emmerich", 2000));
 
J'aimerais donc comparer les éléments de ma liste pour pouvoir les trier sans "sort"!

Reply

Marsh Posté le 13-09-2006 à 12:06:37    

Donc comment comparer tab.get(i) et tab.get(j)
 
"j" etant i+1
 
merci

Reply

Marsh Posté le 13-09-2006 à 13:17:23    

c'est quoi l'énonncée ? parce que là, à froid, j'dirais que c'est de la merde.
 
tu veux les trier celon quoi ? année, réal ? titre ?


---------------
HFR - Mes sujets pour Chrome - Firefox - vérifie les nouveaux posts des topics suivis/favoris
Reply

Marsh Posté le 13-09-2006 à 14:25:03    

Bah en fait merci mais c'est bon j'ai trouvé comment faire j'ai casté mes tab.get en string ;)

Reply

Marsh Posté le 13-09-2006 à 14:26:46    

Ton exposé est truffé de contradictions.
 
Tu parles d'un tableau d'Object et tu montres un tableau de Video.
 
Tu dis que "Dans ce tableau il peut y avoir des string, int, double, float..... " mais je ne vois que des éléments homogènes...
 
Et il serait peu compréhensible que Video n'implémente pas Comparable.


Message édité par sircam le 13-09-2006 à 14:26:57

---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 13-09-2006 à 14:28:43    

golfiste51 a écrit :

Bah en fait merci mais c'est bon j'ai trouvé comment faire j'ai casté mes tab.get en string ;)


 
[:mlc] tu castes tes Video en String ?
 
si ça marche, je veux bien m'la mordre.


Message édité par brisssou le 13-09-2006 à 14:29:22

---------------
HFR - Mes sujets pour Chrome - Firefox - vérifie les nouveaux posts des topics suivis/favoris
Reply

Marsh Posté le 13-09-2006 à 14:42:16    

[:mlc]


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed