Appels successifs méthode keys (Hashtable) : ordre identique?

Appels successifs méthode keys (Hashtable) : ordre identique? - Java - Programmation

Marsh Posté le 20-08-2005 à 14:13:02    

Salut à tous.
 
J'ai une hashtable contenant les informations sur une ligne base de données.
 
Les clés correspondent aux colonnes et les valeurs aux valeurs en base, rien de bien compliqué.
 
J'aimerai savoir si des appels successifs à la méthode keys sur ma Hashtable me garantit que les clés succéssivement retournées se feront à chaque fois dans le même ordre.
 
Pourquoi? Car je dois construire dynamiquement une requête d'insertion en base et je parcours une première fois ma hashtable pour récupérer les clés puis une autre fois pour récupérer les valeurs.
 
Ma requete est du style INSERT INTO table (col_1, col2 ...) VALUES (val_1, val_2...)
 
La réponse semble évidente (même ordre puisque je reste dans la même fonction et mon objet hashtable ne bouge pas) mais je préfère être prudent, ce serait con que les valeurs et les colonnes se croisent, ce serait un beau fouilli :D
 
Merci


Message édité par schumacher le 20-08-2005 à 14:16:55
Reply

Marsh Posté le 20-08-2005 à 14:13:02   

Reply

Marsh Posté le 20-08-2005 à 16:10:08    

non
... et ta façon de faire est pour le moins etrange.. parcours la table plutot que les clés *puis* les valeurs..
 
.. et puis pourquoi tu ne reutiliserais pas le meme Set pour tes deux iterations, aussi ?


Message édité par the real moins moins le 20-08-2005 à 16:13:15

---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 20-08-2005 à 16:15:52    

ce que tu veux faire doit pouvoir se faire en une seule boucle.
utilise map.entrySet() => ca retourne des Map.Entry qui contiennent l'association key->value
 
c'est bien plus rapide que d'itérer sur les clef puis de faire un get à chaque fois


Message édité par benou le 21-08-2005 à 00:22:20

---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 20-08-2005 à 16:41:02    

the real moins moins a écrit :

non
... et ta façon de faire est pour le moins etrange.. parcours la table plutot que les clés *puis* les valeurs..
 
.. et puis pourquoi tu ne reutiliserais pas le meme Set pour tes deux iterations, aussi ?


 
Salut.
 
Merci pour ta réponse mais je ne comprends pas trop ta première phrase. :??:
 
Pour ta seconde phrase, je comprends que tu veux reutiliser la même Enumération, c'est bien ça ?
 
La classe Enumeration ne propose que 2 méthodes (reste des elements, récuperer le prochain element) donc je ne vois pas comment revenir au début. Faut jouer avec les itérateurs?
 
Je vais tester ta proposition benou.
 
Vous me confirmez tous les 2 que l'ordre ne sera donc pas forcément le même et que ça vaut le coup de se poser la question?
 
Merci

Reply

Marsh Posté le 20-08-2005 à 16:46:25    

t'es en java 1.1 :??:


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 20-08-2005 à 17:02:38    

Non, 1.4.2_08 et le javadoc ne me liste que ça...

Reply

Marsh Posté le 20-08-2005 à 23:21:23    

schumacher> Je n'ai pas trop  cherché à comprendre ton problème. Néanmoins pour avoir une Map avec des clés triés tu peut regarder du coté de la librairie commons collection de Apache
edit > + 1 avec moinsmoins : Pkoi n'utilises tu pas la méthode keySet() qui tepermeterrait de parcourir à ta guise tes clefs .


Message édité par phnatomass le 20-08-2005 à 23:28:06
Reply

Sujets relatifs:

Leave a Replay

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