我有一个清单
List<string[]> listname = ...
列表如下所示:
[string][string][string]
我想用第二个字符串对列表进行排序。
第二个字符串是一个以字符串形式显示的数字,我想保持这种方式,我需要这样。
我希望数字按递增顺序排列。
数据示例:
["RDP"]["3389"]["TCP"]
["HTTP"]["80"]["TCP"]
["HTTPS"]["443"]["TCP"]
我想按帖子编号排序。
在这个例子中&#34; RDP&#34;将成为最后一个。
我该怎么办?
答案 0 :(得分:0)
var sortedList = listname.OrderBy(l => int.Parse(l[1]));
这假设每个数组中的第二个条目可解析为int
。如果您对此不确定,则需要添加一些检查,并使用int.TryParse
。
答案 1 :(得分:0)
您可以在OrderBy
中引用数组的相应索引:
var l = new List<string[]>() {
new string[] { "a", "b", "c" },
new string[] { "b", "a", "c" },
new string[] { "c", "c", "c" },
};
var s = l.OrderBy(c => c[1]).ToList();