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

Collection et Stream Java Discussion :

Random dans une liste de bigDecimal


Sujet :

Collection et Stream Java

  1. #1
    Membre du Club
    Inscrit en
    Août 2004
    Messages
    86
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 86
    Points : 44
    Points
    44
    Par défaut Random dans une liste de bigDecimal
    Bonjour,

    Dans le bout de code ci dessous,j'essaye de remplir un tableau positionAleatoire par des indices aleatoires de la liste idVoyageLignesDeSuppression,cette dernière qui contient des bigDecimaux mais quand j'exécute mon programme je découvre que le tableau positionAleatoire contient bcp d'occurences.Merci d'avance

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    StringBuffer sb = new StringBuffer();
    		int positionAleatoire[]=null;
    		if (nombreASupprimer <= idVoyageLignesDeSuppression.size()) {
    			for (int i = 0; i < nombreASupprimer; i++) {
    				positionAleatoire[i] = (int) (Math.round(Math.random()) * (nombreASupprimer-i));
     
    				BigDecimal rand = idVoyageLignesDeSuppression
    						.get(positionAleatoire[i]);
    				sb.append((i == 0) ? "" + rand : "," + rand);
    			}
    		} else {
    			nombreASupprimer = idVoyageLignesDeSuppression.size();
    		}
    		return sb.toString();

  2. #2
    vic
    vic est déconnecté
    Membre confirmé

    Profil pro
    Inscrit en
    Août 2002
    Messages
    431
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 431
    Points : 498
    Points
    498
    Par défaut
    Ce code ne n'exécute pas correctement, positionAleatoire[] vaut null et tu essaie d'écrire dedans. Et que veux tu dire par "contient beaucoup d'occurrences" ?

  3. #3
    Membre du Club
    Inscrit en
    Août 2004
    Messages
    86
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 86
    Points : 44
    Points
    44
    Par défaut détail
    Bonjour,

    Merci de m'avoir répondu.

    J'ai donné un bout de code car le vrai code marche bien,à lafin je reçois une liste avec des id_voyage(bigDecimal),je dois avoir une liste qui contient des id_voyage non identiques mais le bout de code que j'ai montré ne permets pas ça,auriez vous une idée pour que je force le "rand" de ne pas avoir de doublons et merci bcp d'avance.

    Cdt,

  4. #4
    vic
    vic est déconnecté
    Membre confirmé

    Profil pro
    Inscrit en
    Août 2002
    Messages
    431
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 431
    Points : 498
    Points
    498
    Par défaut
    Donc si j'ai bien compris tu cherches en fait à mélanger la liste idVoyageLignesDeSuppression ? Essaie plutôt comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Collections.sort(idVoyageLignesDeSuppression , new Comparator() {
        public int compare( Object o1, Object o2 ) {
            return Math.random() > 0.5? 1 : -1;
        }
    });

  5. #5
    Membre du Club
    Inscrit en
    Août 2004
    Messages
    86
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 86
    Points : 44
    Points
    44
    Par défaut merci
    bonjour,

    merci bcp vic,je l'a testé et apparamment ça donne ce que je veux.

    Merci

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

Discussions similaires

  1. Récupérer un rang random dans une liste
    Par Himari dans le forum Général Python
    Réponses: 3
    Dernier message: 25/04/2010, 17h00
  2. [LG]suppression dans une liste chainée
    Par mister_dsg dans le forum Langage
    Réponses: 9
    Dernier message: 16/12/2003, 21h20
  3. [langage] Comment rajouter des champs dans une liste
    Par toto_titi dans le forum Langage
    Réponses: 4
    Dernier message: 28/08/2003, 14h09
  4. Réponses: 2
    Dernier message: 17/08/2003, 20h07
  5. Réponses: 4
    Dernier message: 24/04/2003, 22h28

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