нужно отсортировать сложный список по позиции конкретного элемента - PullRequest
0 голосов
/ 12 января 2019

Могу ли я использовать функцию sort() вместо этого кода для сортировки этого списка

private static void sortL1Descending(ref List<List<Object>> L1)
{

    for (int i = 0; i < L1.Count; i++)
    {

        for (int j = 0; j < L1.Count -1; j++)
        {

            if (Convert.ToInt32(L1[j][1]) < Convert.ToInt32(L1[j + 1][1]))
            {
                List<Object> temp = L1[j];
                L1[j] = L1[j + 1];
                L1[j + 1] = temp;
            }
        }
    }
}

1 Ответ

0 голосов
/ 12 января 2019

Вы можете использовать Sort(Comparison<T>) и предоставить свое собственное сравнение:

private static int CompareListItems(List<Object> x, List<Object> y)
{
    return Convert.ToInt32(y[1]).CompareTo(Convert.ToInt32(x[1]));
}

private static void sortL1Descending(ref List<List<Object>> L1) 
{
    L1.Sort(CompareListItems);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...