今天QQ有人问这样一个问题:数据中有“1,2,3,4,5,6”,我想在程序中判断数据是否包含有 3, 这个值
对于这种问题第一反应就是用IndexOf解决
string a = "1,2,3,4,5,6";
if(a.IndexOf(“3,")>-1)
{
//字符串A中包含字符串B
}
但后来想想,出于性能和判断的准确性来考虑,改用Contains会比较好
string a = "1,2,3,4,5,6";
if(a.Contains(“3,"))
{
//字符串A中包含字符串B
}
关于IndexOf和Contains性能对比的讨论:http://www.cnblogs.com/uonun/articles/1698974.html
以上只是纯粹针对字符串的解法,但按照提问人的思路,按照面向对象的理念,比较正统的写法应该是
string a = "1,2,3,4,5,6";
List<string> oTempList = new List<string>(a.Split(','}));
if(oTempList.Contains(“3"))
{
//字符串数据A中包含字符串元素B
}