您的位置:首页 > 其它

提取字符串中的数据,判断数字是否为连续递增

2014-08-11 17:12 1616 查看
规则 : 1,2,3,4,5,6,7,8 正确

1,1,3,4,5,6,7,8 错误 (缺2 是不连续的数字集)

1,4,2,3,5,5,6,7 正确

请看实现的代码:

/// <summary>

/// 传入的值是否是连续的数字(可重复,但必须是连续的数字)

/// </summary>

/// <param name="str">1,2,3,4,5,6</param>

/// <returns></returns>

public static bool GetStrOrder(string str)

{

string[] arry = str.Split(',');

//此处需注意,想要数字正常排序,必须转换成int数组

int[] intArray = Array.ConvertAll<string, int>(arry, s => int.Parse(s));

intArray = intArray.Distinct().OrderByDescending(x => x).ToArray();

string StrChk = "";

int Min = intArray.Last();

int Max = intArray.First();

for (int i = Min; i <= Max; i++)

{

StrChk += "," + i;

}

StrChk = StrChk.Substring(1, StrChk.Length - 1);

string[] arryChk = StrChk.Split(',');

//此处需注意,想要数字正常排序,必须转换成int数组

int[] intArryChk = Array.ConvertAll<string, int>(arryChk, s => int.Parse(s));

intArryChk = intArryChk.OrderByDescending(x => x).ToArray();

if (intArray.SequenceEqual(intArryChk))

{

return true;

}

return false;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐