| maison  | Hardware  | réseaux  | programmation  | Logiciel  | Dépannage  | systèmes |  
programmation  
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Programmation Java

  • Programmation JavaScript

  • PHP /MySQL Programmation

  • programmation Perl

  • Programmation Python

  • Ruby Programming

  • Visual Basics programmation
  •  
    Connaissances Informatiques >> programmation >> Programmation Java >> Content
    Comment générer des nombres aléatoires sans répétition en Java
    Le langage Java fournit des utilitaires pour générer des nombres aléatoires à l'intérieur de vos programmes. Si vous voulez générer une série de nombres aléatoires, mais vous ne voulez pas l'un d'eux à répéter , vous devez utiliser les tests et les boucles conditionnelles. En ajoutant chaque numéro que vous générez à un objet de collection de jeu , vous pouvez dire immédiatement si l'un d' entre eux sont des doublons. Si le nombre est un duplicata, vous pouvez demander à Java de continuer à générer de nouveaux numéros jusqu'à ce qu'il trouve celui que vous n'avez pas déjà ajouté à l'ensemble . Le processus implique deux boucles et une instruction conditionnelle . Instructions
    1

    importer les utilitaires Java nécessaires à votre génération de nombres aléatoires et l'objet de set. Ajoutez le code suivant en haut de votre déclaration de classe : import java.util * ;

    Créer un objet de jeu de mémoriser les numéros que vous générez : . MyNumbers TreeSet = new TreeSet ();

    créer une instance de la classe aléatoire pour générer vos nombres aléatoires : Random RandGen = new random () ;
    2

    créer une boucle pour générer vos nombres aléatoires. Ce qui suit boucle for exécute 20 fois : for ( int i = 0; i < 20; i + + ) {//numéro de génération ici }

    l'intérieur de cette boucle , vous pouvez ajouter le traitement pour générer et vérifier votre aléatoire nombre de doublons. Modifiez le nombre 20 afin de refléter le nombre total de valeurs aléatoires que vous voulez que votre programme à générer. Dans la boucle , de générer un nombre aléatoire : int = randNum randGen.nextInt ();

    Cela exécutera chaque itération de la boucle
    3

    Ajouter une deuxième boucle . pour faire face aux numéros en double . Ajoutez le code suivant à l'intérieur de votre première boucle après la ligne de génération de nombres : for (; ;) {//traiter les doublons }

    C'est une boucle infinie , de sorte qu'il exécute sans cesse jusqu'à ce que le code rompt explicitement sur elle . A l'intérieur de cette boucle, vous pouvez demander à Java de continuer à générer des nombres aléatoires jusqu'à ce qu'il génère un que vous n'avez pas déjà utilisé .
    4

    Ajouter un test conditionnel sur chaque nombre aléatoire . Insérez le code suivant dans votre boucle infinie : si ( myNumbers.add ( randNum ) ) break; autre randNum = randGen.nextInt ();

    Lorsque vous essayez d'ajouter un élément à un ensemble , la méthode renvoie vrai ou faux. Si l'élément n'est pas déjà dans le jeu , il retourne vrai , dans ce cas, votre code peut sortir de la boucle. Si l'élément est déjà dans l'ensemble , la méthode retourne false , dans ce cas, vous pouvez demander à Java de choisir un autre nombre aléatoire . La boucle sera alors exécuter à nouveau , tester la nouvelle valeur pour voir s'il s'agit d'un double. Ce processus se poursuit jusqu'à ce qu'une nouvelle valeur est trouvée .
    5

    tester votre code . Ajoutez la ligne suivante après la boucle infinie , mais toujours à l'intérieur de la boucle externe : System.out.println ( randNum ) ;

    Cela vous permettra de voir en un coup d'œil que vos numéros sont tous uniques . Enregistrez votre fichier , compilez votre programme et l'exécuter pour le tester. Parcourez la sortie de vérifier que vos fonctions travaillent .

    Previous :

    next :
      articles connexes
    ·Comment utiliser les commandes préparées en ETL Java …
    ·Comment utiliser Pipes en Java 
    ·Comment faire pour installer Java pour les Jeux 
    ·Comment utiliser la nouvelle ligne dans le programme de…
    ·Comment parcourir un TreeMap 
    ·Comment puis-je faire une liste Hibernate pas avoir d'é…
    ·Comment télécharger des fichiers en vrac sur Java 
    ·Comment ignorer un cas sensible entrée en Java 
    ·Je ne peux pas rendre les fichiers JSP dans IE 8.0 
    ·Comment définir Java String à null 
      articles en vedette
    ·MySQL Auto- incrément est Out of Sync 
    ·Comment sortie une chaîne dans Visual Basic 
    ·Comment faire VBA entrée Boîtes 
    ·Comment faire pour convertir un régime PD en UTF8 dans…
    ·Comment faire pour supprimer PHP De Mes Messages Joomla…
    ·Comment faire alterner les couleurs des lignes de CSS a…
    ·Options de commande Visual Basic 
    ·Comment faire pour modifier le curseur pour chaque form…
    ·Comment cacher une redirection 
    ·Comment mettre à niveau le code Visual Basic 6 
    Copyright © Connaissances Informatiques http://fr.wingwit.com