Сортировка списка точек с помощью Java

У меня есть список точечных объектов, которые я хочу отсортировать по определенной координате, скажем, x-значения. Предоставляет ли Java какие-либо полезные механизмы или я должен использовать один из распространенных алгоритмов сортировки?

Да создайте пользовательский Comparator и используйте его для сортировки списка точек

 class Point{ private int x; private int y; public int getX() { return x; } public void setX(int x) { this.x = x; } public int getY() { return y; } public void setY(int y) { this.y = y; } public Point(int x, int y) { this.x = x; this.y = y; } public Point() { } } 

 List points = new ArrayList(); points.add(new Point(1, 2)); points.add(new Point(60, 50)); points.add(new Point(50, 3)); Collections.sort(points,new Comparator() { public int compare(Point o1, Point o2) { return Integer.compare(o1.getX(), o2.getX()); } }); 

В classе Point вы должны реализовать интерфейс Comparable с общим типом и использовать Collections.sort (пакет java.util) для сортировки List

Предполагать:

 class Point implements Comparable{ int compareTo(Point other){ /* your logic */} } List list = new ArrayList(); /* adding points */ Collections.sort(list); 

Вы должны либо сделать свой class точек для реализации интерфейса Comparable, либо предоставить метод sort () своим собственным объектом Comparator, который сообщает sort (), как упорядочить ваши объекты. Здесь много примеров.

Вы можете использовать что-то вроде Компаратора Bean, поэтому вам не нужно создавать собственные Компараторы.

  • int array (сортировка от самого низкого до самого высокого)
  • Сортировка 2D-массива в C ++ с использованием встроенных функций (или любого другого метода)?
  • Тонирование и сортировка с помощью XSLT 1.0
  • Самый быстрый способ сортировки 3 значений в Java
  • Сортировка ArrayList пользовательских объектов по свойству
  • Какой лучший способ сортировать по 5-звездочному рейтингу?
  • Сортировка IList в C #
  • MySQL Нелегальное сочетание сортировок
  • Сортировка строк в таблице данных
  • Почему java.lang.Number не реализует Comparable?
  • Сортировка списка на основе другого списка
  • Давайте будем гением компьютера.