Probleme liste java

Résolu/Fermé
khalous91 - 29 avril 2015 à 10:39
khalous91 Messages postés 18 Date d'inscription mercredi 15 avril 2015 Statut Membre Dernière intervention 17 juin 2015 - 30 avril 2015 à 10:17
Hello
alors mon problème, c'est que je dois créer deux listes donc a et b.
list a = etude, SIT, h-sylda, logname, horodate
list b = GTO, IMINetendue, nominal, m343656, 150427_103358

et quand je donne a au programme il doit me ressortir b. par exemple je donne SIT il me donne IMINetendue.
Comment puis-je faire mes amis?
A voir également:

1 réponse

totodunet Messages postés 1377 Date d'inscription mercredi 18 mars 2009 Statut Membre Dernière intervention 5 mars 2020 199
29 avril 2015 à 13:20
salut

je pense pas que les listes soient la bonne structure de données à utiliser pour cette situation. je te conseille d'utiliser un dictionnaire (hashmap) avec le couple clé/valeurs
0
Merci toto c'est ce que j'ai fais mais bon je suis bloquer au niveau de mon code :/

j'ai mon fichier xml :
<?xml version="1.0" encoding="utf-8"?>
<parametters>
<value name ="etude">
"GTO"
</value>
<value name ="SIT">
"IMINetendue"
</value>
<value name ="h_sylda">
"nominal"
</value>
<value name ="logname">
"m343656"
</value>
<value name ="horodate">
"150427_103358"
</value>
</parametters>


et puis a partir de là comme je t'ai dit au dessus en donnant a ( etude par ex) je dois récupérer b => GTO.

mon code :

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;

import javax.lang.model.element.Element;


public class Classement {
String a = "etude";
String b = "GTO";
/* Attribut */

private static final Map<String, String> mescorrespondances;
static
{
mescorrespondances = new HashMap<String, String>();
}

/* Mes méthodes */

/**
  • Elle me trouve b quand je lui donne a */ public static void Find(){ } /** * elle met à jour mon attribut en fonction des données du fichier xml */ public static void Open(){ } /** * elle met à jour mon attribut en fonction des couples que je veux avoir * par exemple etude => GTO ; SIT => IMINetendue */ public static Append(){ } /* Les constructeurs */ // 1er constructeur public Classement() { this.mescorrespondances = new HashMap<String, String>(); } // 2eme constructeur public Classement(String filename) { this.mescorrespondances = new HashMap<String, String>(); } }


Je dois peut être utilisé des getter et setter ...
0
totodunet Messages postés 1377 Date d'inscription mercredi 18 mars 2009 Statut Membre Dernière intervention 5 mars 2020 199
29 avril 2015 à 17:43
non justement, pas de get et de set avec une hashmap. tu donnes en paramètre dans ta hashmap la clé (c'est à dire a) et il te fournit sa ou ses valeurs (b)

private HashMap<String, String> monDico;

monDico=new HashMap();

//tu ajoutes les éléments dans ton dico (couple clé/valeurs) au fur et à mesure que tu parses ton xml
monDico.add("etude","GTO");
// "etude" c'est la clé, "GTO" la valeur

System.out.println(monDico.get("etude")); 
//affiche "GTO"


la doc de la hashmap : https://docs.oracle.com/javase/8/docs/api/java/util/HashMap.html
0
khalous91 Messages postés 18 Date d'inscription mercredi 15 avril 2015 Statut Membre Dernière intervention 17 juin 2015 > totodunet Messages postés 1377 Date d'inscription mercredi 18 mars 2009 Statut Membre Dernière intervention 5 mars 2020
30 avril 2015 à 10:17
D'accord , merci Toto ;)
0