代码片段:
-
static void Main(string[] args)
-
{
-
splitString("101=1");
-
int baseValue = 4;
-
int baseValue1 = 4;
-
baseValue = baseValue - Convert.ToInt32("-1");
-
baseValue1 = baseValue1 + Convert.ToInt32("1");
-
Console.WriteLine("{0} {1}", baseValue, baseValue1);
-
Console.ReadLine();
-
}
-
-
///
-
/// 以=号分割像 101=1这样的字符串
-
///
-
static void splitString(string srcStr)
-
{
-
string str = string.Empty;
-
str = srcStr;
-
string[] resultList = str.Split('=');
-
Console.WriteLine("elem 0 = {0}", resultList[0]);
-
Console.WriteLine("elem 1 = {0}", resultList[1]);
-
Console.WriteLine();
-
}
上面的分割函数,正常情况下这样使用是没有任务问题的。但由于srcStr是一个外面传入的值,如果其不是典型的101=1类型的字符串,这里必须容易引发数据越界。
故常常需要作如下防错操作:
-
static void splitString(string srcStr)
-
{
-
string str = string.Empty;
-
str = srcStr;
-
string[] resultList = str.Split('=');
-
if (resultList.Length >= 0)
-
{
-
Console.WriteLine("elem 0 = {0}", resultList[0]);
-
Console.WriteLine("elem 1 = {0}", resultList[1]);
-
}
-
Console.WriteLine();
-
}
当然,上述代码不采用
resultList[0]这样固定索引的方式而采用索引自减的方式,则会更安全,如resultList[i];
PS,另外注意 4-Convert.toIn32(-1)=5; 这个语句极有深意!
阅读(3656) | 评论(1) | 转发(0) |