【发布时间】:2019-05-19 10:15:01
【问题描述】:
我正在尝试对存储对象的数组 (Object hits[]) 进行排序,并且我需要按照已经排序的 ArrayList 中的确切顺序(升序、降序)进行排序。这两者没有任何关系。
我也看到过类似的问题,不同的是你使用 Array 中的顺序对 ArrayList 进行排序。但我想要相反。 我试图将 ArrayList 转换为简单的 Array 并从那里开始,所以问题变成了“使用另一个数组对数组进行排序”,但这并没有真正帮助我,因为我想要“使用另一个数组对对象数组进行排序”。
Arrays.sort(hits, new Comparator<ArrayList<Double>>() {
@Override
public int compare(ArrayList<Double> c1, ArrayList<Double> c2) {
return Double.compare(c1.get(0), c2.get(0));
}
});
我想要上面代码中的一些东西,这给我一个错误“不适用”我目前用作参数的类型。
【问题讨论】:
-
问题不清楚。数组中项目的类型是什么?是
Double吗?您想对数组进行排序以匹配列表中项目的顺序吗? -
和已经排序的ArrayList一样。意思和另一个数组列表中的顺序一样?
-
我也看不懂这个问题,也许你可以添加一个例子来帮助我们理解你想要什么?
-
除了
Object的属性之外,您不能对Objects 的数组进行排序 -
请提供一些示例数据,以便我们了解您的问题。目前,尚不清楚双精度列表如何与对象数组相关。
标签: java arrays algorithm design-patterns collections