返回int的排序列表

时间:2017-09-10 12:17:42

标签: c# list sorting

我知道此处还有其他多个主题,但我无法理解其中的原因

public int[] practice_5(List<int> items)
{
    if (items == null)
    {
        return null;
    }
    else
    {
        List<int> items_sorted = items.OrderBy(p => p).ToList();
        return items_sorted;
    }
}

所以我已经正确地对项目列表进行了排序。我假设,但无论我尝试哪种解决方法,它都不会返回它,因为它无法将List<int>类型转换为int[]

我必须在返回之前转换变量items_sorted吗?

1 个答案:

答案 0 :(得分:5)

试试这个

public int[] practice_5(List<int> items)
{

    if (items == null)
    {
       return null;
    }
    else
    {
       return items.OrderBy(p => p).ToArray();
    }
}

或者如果你想要一个完整的重构,并假设C#6.0或更高。

public int[] practice_5(List<int> items)
{
    return items?.OrderBy(p => p).ToArray();   
}