繁体   English   中英

集合到给定点的最接近点

[英]Closest point of a set to a given point

我有一个由此类表示的二维点的ArrayList。 我通过从用户的鼠标单击获得x和y坐标,并且必须在该位置找到与用户的鼠标所获得的点最接近的点。 我在尝试解决此问题时发现了以下主题

从用户坐标中找到最近的点

Point2D类具有一个称为DISTANCE_TO_ORDER的比较器,该比较器使用与第三个点的距离来比较两个点。 我尝试了以下方法以获得最接近的点:

public Point2D closestPoint(Point2D p){
    return Collections.min(points, p.DISTANCE_TO_ORDER);
}

但我收到错误:尝试时,线程“ main” java.util.NoSuchElementException中的异常

Point2D p = new Point2D(-46.73081652, -23.557997478347108);
Point2D c = gps.closestPoint(p);

我究竟做错了什么? 我试图实现类似该主题的东西,但是没有用。 有人可以帮我解决这个问题吗?

PS:我必须使用Point2D类。

谢谢!

从JavaDoc上的Collections.min(collection, comparator)

如果集合为空,则抛出NoSuchElementException。

因此,最有可能的points是空的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM