IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Java Discussion :

Recherche par boucle et condition


Sujet :

Langage Java

  1. #1
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2013
    Messages : 9
    Par défaut Recherche par boucle et condition
    Bonjour,

    Je rencontre un problème que je n'arrive pas à résoudre depuis des heures... impossible d'avancer.

    Je suis entrain de coder le parsing d'un fichier XML avec JAXB mais je vais plutôt vous exposer mon problème d'une autre manière.

    Soit une liste qu'on nomme A de taille n

    Une autre Liste qu'on nomme B de taille m dont les élément sont des Listes qu'on nomme C de taille o.

    J'aimerai récupérer les indices de C (avec les indices du B correspondant..) des éléments qui sont différent de TOUS LES éléments de A.

    J'ai fait quelque chose de ce genre.

    for (i=0 ; i<n ; i++) {

    for (j=0 ; j<m ; j++) {

    for (k=0 ; k<o ; k++) {

    if ( !B.get(j).C.get(k).equalsIgnoreCase(A.get(i) ) {

    System.out.println("Ce que je recherche se trouve à l'indice j"+j+" et à l'indice k"+k);

    }

    }

    }

    }

    Sauf que le résultat qu'il me donne a un soucis :

    par exemple si l'élément B.get(0).C.get(0) est pareil que A.get(0) mais différent des autres éléments de A, il continue et me dit que B.get(0).C.get(0) est différent de A.get(1) et a.get(2)... et continue, continue, continue...

    Moi ce que je voudrais c'est qu'il m'indique les indices j et k uniquement si cet élément de C est différent de TOUS LES ÉLÉMENTS de A.

    J'espère avoir été compréhensible.

    Merci de votre aide.

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Vu que tu veux être en case insensitive: tu met tout en majuscule dans A

    Puis tu retire ta boucle sur i qui ne sert à rien

    puis tu remplace ton test par


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if ( !A.contains(B.get(j).C.get(k)))
    Par contre, tes classes on sont bizarres. Non seulement elles ne respectent pas les conventions java (les noms de champs c'est comme les noms de variable, c'est en minuscules), mais le code ne correspond pas à ce que tu dit. Moi en lisant ça

    Une autre Liste qu'on nomme B de taille m dont les élément sont des Listes qu'on nomme C de taille o
    J'en conclue que le code devrait être

    En voyant ton code, la phrase correcte serait:

    Une autre Liste qu'on nomme B de taille m dont les élément sont des machins, contenant un champ appelé C qui est une autre liste de taille o

  3. #3
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2013
    Messages : 9
    Par défaut
    Oui c'est exactement ça.

    Merci beaucoup, la méthode contains() est super.

    Merci encore

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Récupérer une valeur, faire une boucle et rechercher par Key()
    Par mertah dans le forum XML/XSL et SOAP
    Réponses: 3
    Dernier message: 11/03/2014, 18h23
  2. recherche multiple par boucle
    Par magicfrom dans le forum Macros et VBA Excel
    Réponses: 16
    Dernier message: 26/05/2008, 11h26
  3. Probleme de recherche par listbox
    Par haigwepa dans le forum IHM
    Réponses: 6
    Dernier message: 12/10/2004, 19h57
  4. Moteur de recherche par date
    Par Prue dans le forum ASP
    Réponses: 17
    Dernier message: 27/08/2003, 16h07
  5. boucle avec condition d'arret changeante
    Par NicoH dans le forum Langage
    Réponses: 3
    Dernier message: 10/06/2003, 11h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo