Есть ли какая-то коллекция Java, что порядок моей выборки случайный? Например, я помещаю целое число 1, 2, 3 в коллекцию, и когда я пытаюсь распечатать их, все результаты могут быть "1 2 3", "3 2 1" или "1 3 2"?
Случайная коллекция Java
Ответ 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, чтобы поместить значения в произвольный порядок.