Genererer unike tilfeldige nummer ved hjelp av Java

click fraud protection

Når du generere tilfeldige tall Det er ofte slik at hvert generert nummernummer må være unikt. Et godt eksempel er å plukke loddtall. Hvert nummer valgt tilfeldig fra et område (f.eks. 1 til 40) må være unikt, ellers ville loddtrekningen være ugyldig.

Den enkleste måten å velge unike tilfeldige tall er å plassere rekkevidden av tall i en samling som kalles en ArrayList. Hvis du ikke har kommet over en ArrayList før, er det en måte å lagre et sett med elementer som ikke har et fast tall. Elementene er objekter som kan legges til eller fjernes fra listen. La oss for eksempel lage lotteritallvelgeren. Det må velge unike tall fra 1 til 40.

En bruksklasse kalt Collections tilbyr forskjellige handlinger som kan utføres på en samling som en ArrayList (f.eks. Søke i elementene, finn maksimum- eller minimumselementet, snu rekkefølgen på elementene, og så videre). En av handlingene den kan utføre er å blande elementene. Blandingen vil tilfeldig flytte hvert element til en annen plassering på listen. Det gjør dette ved å bruke et tilfeldig objekt. Dette betyr at det er en deterministisk tilfeldighet, men det vil gjøre i de fleste situasjoner.

instagram viewer

For å velge de unike tilfeldige tallene, les ganske enkelt ArrayList-elementene en etter en ved å bruke get () -metoden. Den tar posisjonen til elementet i ArrayList som en parameter. Hvis for eksempel lotteriprogrammet trenger å velge seks tall fra 1 til 40:

instagram story viewer