Przypisanie elementom tablicy randomowych liczb

0

Cześć, muszę przypisać pojedynczym elementom randomowe liczby, które nie mogą być takie same tzn. każdemu elementowi tablicy musi zostać przypisana liczba, która jeszcze nie została przypisana innemu elementowi w tej tablicy. Liczby musza być generowane przez ThreadLocalRandom... W moim przykładzie liczby przypisywane elementom mogą się powtarzać i nie wiem jak to zrobić żeby się nie powtarzały.

int [] tablica = new int [5];

    for (int i = 0; i < 5; i++) {
    int przypadkowaLiczba = ThreadLocalRandom.current().nextInt(0, 10);
    tablica[i] = przypadkowaLiczba;
}
3

Ty masz wylosować 5 unikalnych liczb z koszyka zawierającego 10 unikalnych liczb. Możesz wypełnić tablicę 10 liczbami, losowo ją wymieszać (pozamieniać pozycje), na koniec wziąć 5 z góry.

2

Tak jak piszę @piotrpo, ale dopóki to nie jest np 3 z 10mln.
W takim przypadku bardziej opłaca się zrobić set'a dodawać kolejny wylosowany i kontynuować dopóki rozmiar set'a mniejszy od 3.

1 użytkowników online, w tym zalogowanych: 0, gości: 1