collection/string .Contains vs collection/string.IndexOf

Dan*_*iel 5 .net c# string indexing contains

是否有理由在字符串/列表上使用.Contains而不是.IndexOf?我将使用.Contains编写的大多数代码在不久之后需要项目的索引,因此必须执行这两个语句.但为什么不在一个?

if ((index = blah.IndexOf(something) >= 0)
    // i know that Contains is true and i also have the index
Run Code Online (Sandbox Code Playgroud)

luk*_*uke 7

你是对的,这IndexOf是一个比一般更普遍的操作Contains.但是,Contains它仍然非常有用,因为它明确地表示了操作.

if(blah.IndexOf(something) >=0)
{
}
Run Code Online (Sandbox Code Playgroud)

手术并不像以前那么明显

if(blah.Contains(something))
{
}
Run Code Online (Sandbox Code Playgroud)

因此,如果您需要索引,那么您应该使用该IndexOf操作,如果您只需要知道该字符串是否包含子字符串然后使用Contains.

使用该工具完成创建的作业.