Java språket gir verktøy for å generere tilfeldige tall innenfor programmene dine. Hvis du vil generere en rekke tilfeldige tall , men ønsker ikke noen av dem skal gjentas , må du bruke betingede tester og looper . Ved å legge hvert nummer du genererer til et sett samling objekt, kan du fortelle umiddelbart om noen av dem er duplikater. Hvis nummeret er en kopi , kan du instruere Java å fortsette å generere nye numre til den finner en du ikke allerede har lagt til settet . Prosessen involverer to looper og en betinget uttalelse . Instruksjoner 
 en 
 Importer Java- verktøy er nødvendig for generering av tilfeldige tall og sett objekt. Legg til følgende kode på toppen av din klasse erklæring : import java.util * ; 
 
 Lag et sett objekt for å lagre numrene du genererer : . TreeSet myNumbers = new TreeSet (); 
 
 opprette en forekomst av den tilfeldige klasse å generere dine tilfeldige tall : Random randGen = new Random (); 
 2 
 Lag en løkke til å generere tilfeldige tall . Følgende for loop vil utføre 20 ganger : for ( int i = 0 ; i < 20; i + + ) { //antall generasjon her } 
 
 Inne i denne sløyfen , kan du legge til behandling for å generere og sjekke tilfeldig tall for duplikater . Endre nummer 20 for å gjenspeile det totale antallet tilfeldige verdier du vil at programmet skal generere . Inne i loop, generere et tilfeldig heltall: int randNum = randGen.nextInt (); 
 p Dette vil utføre hver gang løkken gjentar 
 3 
 Legg til en ny loop. å takle Duplikatene . Legg til følgende kode i din første bue etter antall generasjon linje : for ( ; ;) { //avtale med duplikater } 
 p Dette er en uendelig loop, så det vil utføre uendelige inntil koden eksplisitt bryter ut av det. Inne i denne sløyfen , kan du instruere Java å fortsette å generere tilfeldige tall før det genererer en som du ikke allerede har brukt . 
 4 
 Legg en betinget test på hver tilfeldig tall. Sett inn følgende kode inni uendelig loop : if ( myNumbers.add ( randNum ) ) break ; annet randNum = randGen.nextInt (); 
 
 Når du prøver å legge til et element i et sett , returnerer metoden true eller falsk . Hvis elementet ikke allerede er i settet , går det sant , og da koden din kan bryte ut av loopen . Hvis elementet er allerede i settet , returnerer metoden falske, og da kan du instruere Java for å velge et annet tilfeldig tall. Sløyfen vil deretter utføre igjen , teste den nye verdien for å se om det er et duplikat. Denne prosessen fortsetter til en ny verdi er funnet. 
 5 
 Test din kode . Legg til følgende linje etter din uendelig loop, men fortsatt inne i ytterste ledd : System.out.println ( randNum ) ; 
 p Dette vil la deg se på et øyeblikk på at tallene er alle unike . Lagre filen, kompilere programmet og kjøre for å teste det. Bla gjennom produksjonen for å kontrollere at funksjoner fungerer.