C# 如何根据C中的列表编号ASC/DESC对列表进行排序?
该如何按ASC顺序进行排序 我得到了一个满是列表记录的列表,我想根据每个记录的第一列对这些记录进行排序——该列是UInt32编号 因此: 我有以下清单:C# 如何根据C中的列表编号ASC/DESC对列表进行排序?,c#,list,sorting,uint32,C#,List,Sorting,Uint32,该如何按ASC顺序进行排序 我得到了一个满是列表记录的列表,我想根据每个记录的第一列对这些记录进行排序——该列是UInt32编号 因此: 我有以下清单: new List<UInt32>: 32,1,1,1,1,1 new List<UInt32>: 22,2,2,2,2,2 new List<UInt32>: 32,1,1,1,1,1 new List<UInt32>: 1,1,1,1,1 应将其分类为: List<UInt32>:
new List<UInt32>: 32,1,1,1,1,1
new List<UInt32>: 22,2,2,2,2,2
new List<UInt32>: 32,1,1,1,1,1
new List<UInt32>: 1,1,1,1,1
应将其分类为:
List<UInt32>: 1,1,1,1,1
List<UInt32>: 22,2,2,2,2,2
new List<UInt32>: 32,1,1,1,1,1
new List<UInt32>: 32,1,1,1,1,1
->只有第一个数字才重要!其他的对于排序并不重要。我在寻找ASC的东西,但两者都很棒,所以当我认为应该更改算法时,我会查找:
谢谢你的努力帮助
@Samuel,谢谢,我将在尝试更改类型时尝试实现它:几乎是以下内容的副本:
比如:
var sorted = parent.OrderBy( l => l[0] );
或:
虽然John的答案有效,但我建议使用First而不是访问列表中的0元素。这样,它适用于任何IEnumerable,而不仅仅是IList
是的,差不多了,但我正在学习这些东西,现在也需要它,所以我真的很抱歉我几乎复制了,但我不认为这是个坏主意。。谢谢此错误弹出在parent.sort->error 1 Identifier expected第一个示例也会这样做。应为标识符。在[0]处,“l”后面的点错误-应仅读取“l[0]”而不是“l[0]”。哎呀,已修复。我现在觉得自己很笨。我想这就是我不测试代码的原因。如果你愿意,但两个答案都足够短,如果看的话可以看到。可能它甚至应该是First或default,以避免在子项为空的情况下出现异常。你可以,但是使用.First和空子列表,返回的序列将是空的。
parent.Sort( (a,b) => a[0].CompareTo( b[0] ) )
var sorted = list.OrderBy(subList => subList.First());