Collections類中的shuffle方法用于將指定的List按隨機順序重新排列。下面是shuffle方法的用法:
List<Integer> numbers = new ArrayList<>();
numbers.add(1);
numbers.add(2);
numbers.add(3);
numbers.add(4);
numbers.add(5);
Collections.shuffle(numbers);
System.out.println(numbers);
輸出結果可能為:[4, 2, 1, 5, 3]。每次運行結果都可能不同,因為shuffle方法會隨機重新排列List中的元素。
List<Integer> numbers = new ArrayList<>();
numbers.add(1);
numbers.add(2);
numbers.add(3);
numbers.add(4);
numbers.add(5);
Random random = new Random();
Collections.shuffle(numbers, random);
System.out.println(numbers);
在shuffle方法中,可以傳遞一個隨機數生成器參數,以便在重新排列元素時使用自定義的隨機數生成器。這樣可以控制隨機性。
注意:shuffle方法只能用于實現了RandomAccess接口的List。對于LinkedList等非RandomAccess的List,shuffle方法可能會導致性能下降。