У меня есть класс Unit
, в котором много полей, как показано ниже:
public class Unit {
private final int id;
private final int beds;
private final String city;
private final double lat;
private final double lon;
// constructors and getters here
// toString method
}
Теперь у меня есть список Unit
, который является List
объектом, который содержит многоЕдиницы.Теперь мне нужно найти ближайшие единицы от List
объекта до Unit x
.Ограничьте результаты пределом.
private List<Unit> nearestUnits(List<Unit> lists, Unit x, int limit) {
List<Unit> output = new ArrayList<>();
// how do I sort lists object in such a way so that I can get nearest units here to "x"?
return output;
}
В классе Unit
имеется широта / долгота, поэтому мы можем использовать это для вычисления евклидова расстояния и сравнения.Я запутался в том, как отсортировать список единиц по кратчайшему расстоянию и получить ближайшие единицы.Я работаю с Java 7 на данный момент, поэтому я не могу использовать Java 8.