微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 在通用列表中搜索项目时,我应该使用LINQ还是包含?

我有一个通用的List,我必须在这个列表中找到一个特定的字符串.能否请您告诉我下面哪种方法最好?

if (strlist.Contains("Test"))
{
    // String found
}

要么

string res = (from d in strlist where d == "Test" select d).SingleOrDefault();

if (res == "Test")
{
    //found
}

请考虑从数据库填充的列表可能非常大.您对此的看法非常感谢.

解决方法

如果你有List< string> (或甚至IEnumerable< string>)和Contains满足您的需求,然后使用Contains.

如果你需要一些Contains没有提供的额外处理,我建议使用Any():

if(strList.Any(s => s.StartsWith("Tes"))
{
    // Found
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐