我有两个数组列表:
private List<Client> clientList = new ArrayList<Client>();
private List<Client> sortedClientList = new ArrayList<Client>();
我这样排序clientList
:
clientList.sort(Comparator.comparing(Client::getScore));
我想做的是"克隆"。所有的内容以相同的顺序排序到sortedClientList,但我做错了。我尝试了sortedClientList.add(clientList.sort(Comparator...
和sortedClientList.addAll(clientList.sort(Comparator...
,但我得到了错误The method add(Client) in the type List<Client> is not applicable for the arguments (void)
我的目标是有一个排序列表,但在一个单独的对象,因此sortedClientList
方法sort
对列表进行排序并不返回任何结果(即void
)。
https://docs.oracle.com/javase/8/docs/api/java/util/List.html sort-java.util.Comparator——
该方法的类型为void
,这意味着它不返回对象,因此您不能将其作为对象传递。
clientList.sort(...)
此方法对clientList
的元素进行排序,它不会创建一个已排序的clientList
的副本。
你要找的是对clientList
进行排序,这里提出了一个类似的问题:数组列表