Probleme liste java

Résolu
khalous91 -  
khalous91 Messages postés 24 Statut Membre -
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?

1 réponse

  1. totodunet Messages postés 1513 Statut Membre 201
     
    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
    1. khalous91
       
      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>(); } }


    2. Je dois peut être utilisé des getter et setter ...
0
  • totodunet Messages postés 1513 Statut Membre 201
     
    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
    1. khalous91 Messages postés 24 Statut Membre > totodunet Messages postés 1513 Statut Membre
       
      D'accord , merci Toto ;)
      0