Welkom op de Nederland Computer Kennisnetwerk!  
 
Zoeken computer kennis
Home Hardware Netwerken Programmering Software Computerstoring Besturingssysteem
Computer Kennis >> Programmering >> Java Programming >> Content
Hoe je willekeurige getallen genereren Zonder Herhaling in Java
De Java-taal biedt hulpprogramma's voor het genereren van willekeurige getallen in je programma . Als u een reeks willekeurige getallen genereren , maar willen niet een van hen te worden herhaald , moet u voorwaardelijke tests en loops gebruiken . Door het toevoegen van elk nummer dat u het genereren van een set collectie object , dan kunt u direct vertellen of een van hen zijn duplicaten . Als het nummer is een duplicaat , kunt u instrueren Java te blijven genereren van nieuwe nummers totdat het er een vindt je niet al aan de set toegevoegd . Het proces omvat twee lussen en een voorwaardelijke verklaring . Instructies
1

Importeer het Java- hulpprogramma's die nodig zijn voor uw genereren van willekeurige getallen en set -object . Voeg de volgende code aan de bovenkant van je klas aangifte : import java.util * ;

Maak een set -object om de nummers die u genereert opslaan : . TreeSet myNumbers = new TreeSet ( ) ;

Maak een instantie van de willekeurige klasse aan uw willekeurige getallen genereren : Random randGen = new Random ( ) ; kopen van 2

Maak een lus om je willekeurige getallen genereren . De volgende lus zal uitvoeren 20 keer : for (int i = 0 ; i < 20 ; i + + ) { //number generatie hier }

Binnen deze lus , kunt u de verwerking toe te voegen aan het genereren en controleer je willekeurige nummers voor duplicaten . Alter het nummer 20 aan het totale aantal willekeurige waarden die u wilt uw programma te genereren weerspiegelen . In de lus , het genereren van een willekeurig getal : int randNum = randGen.nextInt ( ) ;

Dit zal elke keer dat de lus herhaalt voeren
3

Voeg een tweede lus . omgaan met dubbele cijfers . Voeg de volgende code in je eerste lus na het nummer generatie lijn : voor ( ; ;) { //omgaan met duplicaten }
p Dit is een oneindige lus , dus het zal eindeloos uit te voeren totdat de code breekt expliciet uit het. Binnen deze lus , kunt u instrueren Java te blijven genereren van willekeurige getallen totdat het genereert een die je nog niet hebt gebruikt .
4

Voeg een voorwaardelijke test op elk willekeurig nummer . Plaats de volgende code in je oneindige lus : if ( myNumbers.add ( randNum ) ) break ; anders randNum = randGen.nextInt ( ) ;

Wanneer u een element toe te voegen aan een set , retourneert de methode true of vals . Als het element niet reeds in de set , keert het terug waar, in welk geval uw code kan uit te breken van de lus . Als het element al in de set , retourneert de methode valse , in welk geval u kunt instrueren Java naar een ander willekeurig getal kiezen . De lus zal dan opnieuw uit , het testen van de nieuwe waarde om te zien of het een duplicaat is . Dit proces gaat door totdat een nieuwe waarde wordt gevonden .
5

Test uw code . Voeg de volgende regel na uw oneindige lus , maar nog steeds binnen de buitenste lus : System.out.println ( randNum ) ;

Dit zal u laten in een oogopslag zien dat uw nummers zijn allemaal uniek . Sla uw bestand , compileren uw programma en draaien om het te testen . Blader door de output te controleren of uw functies werken .

Previous: Next:
  Java Programming
·Hoe maak je een webbrowser Mot…
·Hoe een Output Stroom Van een …
·Hoe om te ontdekken of een bep…
·Hoe te Combinaties in Java Gen…
·Java Coding Taal 
·Kan Java Verwijder de Last aan…
·Hoe je wordt gevraagd om een ​…
·Hoe maak je een Handler in Axi…
·Hoe maak je een Random Access-…
  Related Articles
Hoe maak je een Combo Box Maak in Visual…
Hoe maak je een Check Box Maak in Visual…
Hoe maak je een tekstvak maken in Visual…
Hoe maak je een optie Box in Visual Basi…
Hoe maak je een schijf keuzelijst in Vis…
Hoe kan ik een keuzelijst maken in Visua…
Hoe kan ik een Picture Box Maak in Visua…
Hoe een bestand keuzelijst Maak in Visua…
Hoe kan ik een afbeelding Box Maak in Vi…
  Programmering Articles
·Hoe te Cursor Standaard Syntax ligt in V…
·Iomanip Functies 
·Hoe kan ik een array in PHP Reset 
·Wat is een Grid -systeem? 
·HTML Onload Opties 
·Hoe om te controleren een PHP File Type 
·Hoe te gebruiken VB VBA een Ping Test ui…
·Hoe maak je een sessie ID in Maak PHP 
·Hoe te JavaScript en PHP gebruiken in fo…
Copyright © Computer Kennis http://www.nldit.com