【发布时间】:2021-04-26 09:10:27
【问题描述】:
我开始学习 Java。目前,我陷入了按对象中浮点值的升序对对象数组进行排序的问题。目标是从数据数组中绘制图表。在我可以绘制图表之前,我必须对坐标进行排序,以便 x 值是升序的。所以我把它们放在一个 Object 中,将 x 和 y 数据链接在一起。
我从 2 个浮点数组开始:
float[] xValues = {-5.6f, 2.1f, 0.1f, 4.4f, 8.5f, -1.6f};
float[] yValues = {1.0f, 2.4f, 5.7f, -2.8f, -6.4f, 2.9f};
比我使用这个函数把它放入一个 Point 对象数组中:
graphPoints = new Point[arrayLength];
for (int i = 0; i < graphPoints.length; i++) {
graphPoints[i] = new Point();
}
for (int i = 0; i < graphPoints.length; i++) {
graphPoints[i].x = x[i];
graphPoints[i].y = y[i];
}
包含此对象:
class Point {
public float x;
public float y;
}
我在网上找到的可能解决方案建议使用comparator<Point> 对对象数组进行排序,这是我还没有学过的。使用我发现的示例无法使其与浮点值一起使用。所有示例都适用于 int 字符串。
我错过了什么吗?有没有合适的方法来做到这一点?谁能给我一些关于这个话题的指导?
【问题讨论】:
标签: java arrays sorting object