java - 如何打乱一组对象(在处理中)?
问题描述
我希望能够随机化对象数组的顺序,但我不知道如何在不丢失对象信息的情况下做到这一点 - 即随机数组中的对象在变量方面必须相同/字段到非随机数组。那么:随机化(用户定义的)对象数组的顺序的最简单方法是什么?
解决方案
我们有 java.util.Collections.shuffle() 方法来打乱列表对象中的元素。
这是供您参考的工作示例
List<String> list = new ArrayList<String>();
list.add("1");
list.add("2");
list.add("3");
list.add("4");
list.add("5");
list.add("6");
list.add("7");
list.add("8");
System.out.println("list before shuffle " + list);
Collections.shuffle(list);
System.out.println("list after shuffle for first time" + list);
Collections.shuffle(list);
System.out.println("list after shuffle for second time" + list);
输出:
list before shuffle [1, 2, 3, 4, 5, 6, 7, 8]
list after shuffle for first time[4, 6, 1, 3, 7, 5, 2, 8]
list after shuffle for second time[1, 5, 6, 7, 2, 8, 3, 4]
推荐阅读
- javascript - 为什么 setTimeout() 不起作用?
- python - 模板变体标题未显示
- flutter - 如何删除 AlertDialog 中的空格?
- arrays - 打印数组的列
- mysql - 如何使用字符串中的前一个数字对所有非数字字符进行重复
- javascript - 如何使用正则表达式搜索字符串?
- python-3.x - 从变量中调用自动化函数
- xml - XSLT:3.0 Employee Report 输出格式有标题和行记录。有什么方法可以使用 for-each 和累加器在标题记录上实现 Total Emp 计数?
- sql - 服务器 SQL 如何使用 STUFF 清理列?
- python - python使用corrcoeff实现matlab的corr函数