Метод shuffle
Метод shuffle класса Collections
перемешивает элементы переданной коллекции
в случайном порядке. Метод принимает один
обязательный параметр - список, элементы
которого нужно перемешать. Также существует
перегрузка, которая вторым параметром
принимает объект Random для
генерации случайных чисел.
Синтаксис
Collections.shuffle(list)
Collections.shuffle(list, random)
Пример
Давайте перемешаем список строк:
import java.util.Collections;
import java.util.List;
public class Main
{
public static void main(String[] args)
{
List<String> list = List.of("a", "b", "c", "d", "e");
List<String> res = new java.util.ArrayList<>(list);
Collections.shuffle(res);
System.out.println(res);
}
}
Результат выполнения кода:
[c, a, e, b, d]
Пример
Давайте перемешаем список чисел:
import java.util.Collections;
import java.util.List;
public class Main
{
public static void main(String[] args)
{
List<Integer> list = List.of(1, 2, 3, 4, 5);
List<Integer> res = new java.util.ArrayList<>(list);
Collections.shuffle(res);
System.out.println(res);
}
}
Результат выполнения кода:
[4, 2, 5, 1, 3]
Пример
Давайте перемешаем список с использованием
объекта Random для
воспроизводимости результата:
import java.util.Collections;
import java.util.List;
import java.util.Random;
public class Main
{
public static void main(String[] args)
{
List<String> list = List.of("a", "b", "c", "d", "e");
List<String> res = new java.util.ArrayList<>(list);
Random random = new Random(42);
Collections.shuffle(res, random);
System.out.println(res);
}
}
Результат выполнения кода:
[b, e, a, d, c]
Смотрите также
-
класс
Collections,
который содержит статические методы для работы с коллекциями -
метод
sort,
который сортирует элементы коллекции -
метод
reverse,
который меняет порядок элементов на обратный -
метод
swap,
который меняет местами два элемента коллекции