为什么 Collections.sort(List) 在 Java 8 中与 CopyOnWriteArrayList 一起工作,但在 Java 7 中却不工作?
我可以使用以下代码和Java 8对用户列表进行排序而不会出现任何问题:
CopyOnWriteArrayList<User> allCurrentLoginnedUsersList = new CopyOnWriteArrayList<>();
Collections.sort(allCurrentLoginnedUsersList);
现在,我改用了Java 7,在eclipse上我没有看到任何错误。但是现在,在Java 7下运行时,我得到了这个错误:
java.lang.UnsupportedOperationException
at java.util.concurrent.CopyOnWriteArrayList$COWIterator.set(CopyOnWriteArrayList.java:1049)
at java.util.Collections.sort(Collections.java:221)
at com.fluent.User.sortAllCurrentLoginnedUsers(User.java:446)
如何解决?