我有一个 MultiValuedMap(Apache commons),其中包含字符串键和存储在双精度数组列表中的值,从文件中读取。我不需要对键进行排序,但我确实需要对与每个键关联的 ArrayList 进行排序。有没有办法做到这一点?
我试过 Collections.sort 但它似乎不适用于 MultiValuedMap。我还没有尝试创建比较器,但我不确定如何为地图中的某些内容开始一个比较器。
//Read file of data to be placed in MultiValuedMap
BufferedReader br = new BufferedReader(new FileReader(fileName));
String line = "";
String csvSplitBy = ",";
//Create the MultiValuedMap
MultiValuedMap<String, Double> mvMap = new ArrayListValuedHashMap<>();
//Read data into MultiValuedMap
while ((line = br.readLine()) != null) {
String[] cols = line.split(csvSplitBy);
mvMap.put(cols[4], Double.parseDouble(cols[3]));
//This gives an error
Collections.sort(mvMap);
我从 Collections.sort 得到的错误是“没有合适的排序方法(MultiValuedMap)”
我不想对键进行排序,只是对值进行排序。所以预期的输出应该是这样的:
44 => [284.5, 289.35, 300.53, 534.0] 和 41 => [311.82, 368.45, 400.2]
噜噜哒
RISEBY
缥缈止盈
相关分类