java.util.Collections.shuffle() 方法用于使用指定的随机源随机排列指定的列表。假设随机源是公平的,所有排列发生的可能性相同。
语法
public static void shuffle(List<?> list,
Random rnd)
参数
list | 指定要打乱的列表。 |
rnd | 指定来源用于随机播放列表的随机性。 |
返回值
void 类型。
异常
如果指定的列表或其列表迭代器不支持设置操作,则抛出UnsupportedOperationException。
示例:
在下面的示例中,java.util.Collections.shuffle()方法用于使用指定的随机源对给定列表的元素进行洗牌。
import java.util.*;
public class MyClass {
public static void main(String[] args) {
//创建列表对象
List<Integer> MyList = new ArrayList<Integer>();
//填充我的列表
MyList.add(10);
MyList.add(20);
MyList.add(30);
MyList.add(40);
MyList.add(50);
//打印我的列表
System.out.println("MyList contains: " + MyList);
//创建一个随机对象
Random rand = new Random();
//使用以下命令对列表中的元素进行混洗
//随机性来源
Collections.shuffle(MyList, rand);
//打印我的列表
System.out.println("MyList contains: " + MyList);
}
}
第一个上述代码的可能结果可能是:
MyList contains: [10, 20, 30, 40, 50]
MyList contains: [40, 30, 10, 50, 20]