在c#中对数组进行排序[关闭]
Posted
技术标签:
【中文标题】在c#中对数组进行排序[关闭]【英文标题】:Sorting Array in c# [closed] 【发布时间】:2012-10-30 12:40:28 【问题描述】:我想对数组列表进行排序以找出相同的姓氏,并且应该使用 c# 按字母顺序排列。
string[] iniArray = "M Facci", "D Thornton", "B Luke", "S Tofani";
提前谢谢你。
【问题讨论】:
你试过什么?排序是一个很常见的操作,你肯定可以在网上找到足够的信息来尝试一下吗? @Jon: 正确的是“你尝试过什么”? 你既没有数组列表也没有列表,只有一个数组。另外,您为什么要对数组列表进行排序以找出相同的姓氏?这与排序有什么关系? @Vlad:怀疑的好处。 【参考方案1】:string[] iniArray = "M Facci", "D Thornton", "B Luke", "S Tofani", "T Luke" ;
var sortedArray = iniArray.OrderBy(r => r.Split(' ').Last()).ToArray();
或(@killercam 提供)
var sortedArray = iniArray.OrderBy(r => r.Split().Last()).ToArray();
假设一个字符串中只有名字和姓氏,那么也存在一个姓氏。
显示结果数组:
foreach (string str in sortedArray)
Console.WriteLine(str);
输出将是:
M Facci
B Luke
T Luke
D Thornton
S Tofani
【讨论】:
我怀疑这个假设是否合理:kalzumeus.com/2010/06/17/… @Vlad,是的,这是真的,但我只考虑问题中的样本,还有一些事情留给 OP 自己做 您实际上不需要' '
中的Split()
...
@Killercam,不错,不知道这个
感谢您的回答,请告诉我如何在 Winforms 中逐行显示输出。以上是关于在c#中对数组进行排序[关闭]的主要内容,如果未能解决你的问题,请参考以下文章