List<Integer> list = Collections.shuffle(list);
这个任务没用。它给出了“不兼容的类型”,即使它显然是 aList
并且.shuffle()
需要 a List
。那么为什么这个东西不起作用呢?
List<Integer> list = Collections.shuffle(list);
这个任务没用。它给出了“不兼容的类型”,即使它显然是 aList
并且.shuffle()
需要 a List
。那么为什么这个东西不起作用呢?
检查javadoc。Collections.shuffle
有一个void
返回类型。创建你的List
第一个,然后随机播放。例如:
List<Integer> list = Arrays.asList(1, 2, 3, 4, 5);
Collections.shuffle(list);
System.out.println("Shuffled List: " + list);
其实有两个问题:
List list = new ArrayList(list);
也不起作用,因为赋值的右操作数在左操作数之前被解析。Collections.shuffle()
有一个void
返回类型,因此你不能将它(“结果”)分配给一个变量。该方法shuffle()
更改了作为输入给出的相同列表(对于函数式程序员可能不直观)。