Generarea de numere unice aleatorii folosind Java

Cand tu genera numere aleatorii de multe ori este cazul ca fiecare număr generat de numere trebuie să fie unic. Un bun exemplu este alegerea numerelor de loterie. Fiecare număr ales la întâmplare dintr-un interval (de exemplu, de la 1 la 40) trebuie să fie unic, în caz contrar, tragerea la sorți ar fi nulă.

Cel mai simplu mod de a alege numere aleatorii unice este de a pune gama de numere într-o colecție numită ArrayList. Dacă nu ați mai întâlnit un ArrayList înainte, este o modalitate de stocare a unui set de elemente care nu au un număr fix. Elementele sunt obiecte care pot fi adăugate sau eliminate din listă. De exemplu, haideți să facem numărul de loterie. Trebuie să aleagă numere unice dintr-un interval de la 1 la 40.

O clasă de utilitate numită Colecții oferă diferite acțiuni care pot fi efectuate pe o colecție precum un ArrayList (de exemplu, căutați elementele, găsiți elementul maxim sau minim, inversați ordinea elementelor și curând). Una dintre acțiunile pe care le poate efectua este de a amesteca elementele. Shuffle va muta la întâmplare fiecare element într-o poziție diferită din listă. Face acest lucru folosind un obiect aleatoriu. Aceasta înseamnă că este o aleatorie deterministă, dar se va întâmpla în majoritatea situațiilor.

instagram viewer

Pentru a alege numerele aleatorii unice, pur și simplu citiți elementele ArrayList unul câte unul folosind metoda get (). Acesta ia ca parametru poziția elementului din ArrayList. De exemplu, dacă programul de loterie trebuie să aleagă șase numere între 1 și 40: