Подтвердить что ты не робот

Случайная коллекция Java

Есть ли какая-то коллекция Java, что порядок моей выборки случайный? Например, я помещаю целое число 1, 2, 3 в коллекцию, и когда я пытаюсь распечатать их, все результаты могут быть "1 2 3", "3 2 1" или "1 3 2"?

4b9b3361

Ответ 1

Если вам просто нужна случайная последовательность, вы можете использовать Collections.shuffle

    List<Integer> list = new LinkedList();
    //Add elements to list
    Collections.shuffle(list);

Ответ 2

Возьмите обычную коллекцию и перетасуйте ее, а затем проведите по ней обычным способом.

Вы можете использовать java.util.Collections.shuffle(List<T>) для перетасовки.

Ответ 3

Просто shuffle коллекция.

Если коллекция должна оставаться в порядке, вы можете получить доступ к элементам случайных индексов, но тогда вам нужно отслеживать те, которые вы использовали раньше (возможно, это зависит от вашего приложения), и это может быть очень неэффективным. Лучшее решение, если память не является препятствием, - это просто сделать копию и перетасовать ее.

Ответ 4

Не то, чтобы я знал. Вы всегда можете поместить значения в список и использовать Collections.shuffle, чтобы поместить значения в произвольный порядок.