java - Java 对 ArrayList 中的 ArrayList 进行排序
问题描述
我在对包含 ArrayLists 的 ArrayList 进行排序时遇到了一些问题
ArrayList<ArrayList<String>> multiMarkArray = new ArrayList<ArrayList<String>>();
String line;
while ((line = bufRdr.readLine()) != null) {
ArrayList<String> singleMarkArray = new ArrayList<String>();
for (String word : line.split(" ")) {
singleMarkArray.add(word);
}
Collections.swap(singleMarkArray, 0, 1);
multiMarkArray.add(singleMarkArray);
}
Collections.sort(multiMarkArray);
System.out.println(multiMarkArray);
我收到错误Collections cannot be applied to (java.util.ArrayList>)
有人可以指出我解决这个问题的正确方向吗?
谢谢
解决方案
如果你想对包含在multiMarkArray
你应该做的所有列表进行排序
for (ArrayList<String> strings : multiMarkArray) {
Collections.sort(strings);
}
代替
Collections.sort(multiMarkArray);
这将对每个列表中的字符串进行排序。但是列表的排序multiMarkArray
不会受到影响。
推荐阅读
- spring - Spring Security 架构过滤器链和请求匹配器
- go - 通过拉伸器/作证模拟,不同的返回参数
- c++ - 在设置期间重新初始化对象以在使用 UniversalTelegramBot 时覆盖全局初始化
- javascript - 更好的方法来创建嵌套数组的计数等于孩子的总数
- angular - 如何在ionViewDidEnter中调用Router的重载参数
- r - Leaflet R中的不同颜色(每组)addPolylines
- java - 使用 Java 从 MySQL 中检索图片
- power-automate - Power Automate 无法连接到本地数据网关
- c# - 使用 Aforge 对屏幕截图进行操作
- javascript - 如何从 Meteor FS 集合中检索 Jade 中的图像