假设我的List<string>
值为
我希望将值重新排列为以下顺序:
最终的排序顺序是: *番茄 *苹果 *苹果 *橙子 *橙子 *香蕉 *香蕉
我该如何做到这一点?
答案 0 :(得分:1)
通常,您可以按照自己想要的方式订购IEnumerable,包括List<T>
。有几种方法。这些天常见的是使用Linq
List<string> newList = originalList.OrderBy(e => { your code here }).ToList();
你会替换
{您的代码在这里}
使用您自己的代码提供所需的排序。
如果要从结果中删除重复项,可以使用
List<string> newList = originalList.Disinct().OrderBy(e => { your code here }).ToList();
如果由于某种原因你想按字符串的最后一个字符排序,你的OrderBy可能如下所示(注意:我没有考虑字符串为null或String.Empty的可能性,以便保持片段短)。
.OrderBy(e => e[e.Length-1])