【发布时间】:2010-11-24 18:39:33
【问题描述】:
我是否有可能以一种允许我确定“9”的方式使用 LINQ 是排序列表中的第一个缺失值,而不使用 for 循环并将每个值与其相邻的值进行比较?
var listStringVals = new [] { "7", "13", "8", "12", "10", "11", "14" };
// sort list to "7","8","10","11","12","13","14"
var sortedList = listStringVals.OrderBy(c => int.Parse(c)).ToList();
// need some magic here to get the first gap in the sorted list
【问题讨论】:
-
只是好奇;为什么他们是
string而不是int之类的? -
循环最终将成为用 C# 编写此代码的最简单、最清晰的方法。
-
@BeemerGuy - 它们是字符串,因为它们代表存储在数据库中的 ID 字符串的一部分。我只是在玩 LINQ,试图更好地了解它何时可以简化某些任务。
标签: c# .net linq sorting .net-3.5