我真的对枚举列表一无所知,但经过一些研究,我发现这个列表可能有助于解决我的问题。所以我的设置中有一个名为 strGrades 的字符串,它是我手动更新的一系列字符串。范围为 0155-0160、0271-0388、0455-0503、0588-687。我基本上想要做的是找到不在这个成绩列表中的值(例如0161,0389、0504-0587 ...)
所以我想出了一个函数,可以让我在年级范围内获得每场比赛:
public static List<GradeRange> GetValidGrades()
{
MatchCollection matches= Regex.Matches(Settings.Default.productRange,
Settings.Default.srGradeRange);
List<GradeRange> ranges= new List<GradeRange();
if(matches.Count >0)
{
foreach (Match match in matches)
{
ranges.Add(new GradeRange() 23 {
Start= int.Parse(match.Groups["Start"].Value),
Stop= int.Parse(match.Groups["Stop"].Value)
});
}
}
return ranges;
}
这是年级范围类
public class GrandRange
{
public int Start{get; set;)
public int Stop {get; set; )
}
所以上面的函数捕获了我的开始和结束值,任何人都可以帮我把它放到一个列表中,在那里我可以找到超出范围值的值,我只需要一个起点。非常感谢!