У меня есть список точек с 50 элементами, я хотел сортировать их, поэтому я использовал orderby thenby to, но мой вывод кажется неправильным. Первые элементы сортируются соответственно, но следующие неправильно, вот скриншот.OrderBy(). ThenBy() неправильный вывод
1-ые пять данных, где упорядоченные правильно, что должно быть, что бы другие данные. но следующие - нет. Я не знаю, в чем проблема.
Так что следующий пять выход должен быть:
{X=249, Y=198}
{X=249, Y=308}
{X=249, Y=413}
{X=249, Y=519}
{X=249, Y=629}
Мой список список PointF:
List<PointF> points = new List<PointF>();
Вот мой код:
points = points.OrderBy(c => c.X).ThenBy(c => c.Y).ToList();
Мое подозрение в том, что ваши значения X не являются точными. Например, вы можете иметь X = 249 и X = 249.00000001 в разных точках. Попробуйте изменить код на 'OrderBy (c => Math.Floor (c.X)). ThenBy (c => c.Y)' – Zruty
@Zruty: Очень правдоподобно; вы должны написать это как ответ! – Ani
@ Zruty вы ответ дали мне правильный результат, я не понимаю, почему. Спасибо zruty! +1 – julianconcepcion