按姓氏排序的名称列表

  • 本文关键字:列表 排序 c# linq
  • 更新时间 :
  • 英文 :


我需要用','读取一行中的名称列表,例如:John Doe, Johnny Di, ...我是初学者,所以我真的不知道如何正确阅读列表,但这就是我设法扰乱的原因

var names = new List<string>();
string name1 = Console.ReadLine();
while (name1 != "")
{
names.Add(name1);

name1 = Console.ReadLine();
}

var res = from name in names
orderby name.Split(" ")[1]
ascending
select name;

类似这样的东西:

var res = Console
.ReadLine()
.Split(',', StringSplitOptions.TrimEntries)
.OrderBy(name => name
.Split(' ', StringSplitOptions.RemoveEmptyEntries)
.LastOrDefault(),
StringComparer.OrdinalIgnoreCase)
.ToList(); // .ToArray(); if you want an array

这里是

  1. 读取用户输入-Console.ReadLine()-所有名称用逗号分隔(例如John Doe, Johnny Di, John Smith(
  2. ,分割用户输入,同时修剪每个项目(请注意,在逗号前后允许有空格,如John Smith, Jack Doe(
  3. 订购项目:我们Splitname以获得最后名称。姓氏为LastOrDefault
  4. 让我们将列表(List<string>(作为res

最新更新