В чем смысл этого кода? - PullRequest
0 голосов
/ 26 апреля 2010
if (exist.IndexOf("true") == -1)
{
    //first condition

}
else
{
    // second condition
}

Что это значит, если я использую (exist.IndexOf("true") != -1)?

Ответы [ 6 ]

13 голосов
/ 26 апреля 2010

Ну, обычно IndexOf возвращает -1, если элемент не может быть найден. Итак, первое условие будет выполнено, если строка "true" отсутствует в exist.

5 голосов
/ 26 апреля 2010

В качестве альтернативы

if (!exist.Contains("true"))
{
  //first condition
}
else
{
  // second condition
}
5 голосов
/ 26 апреля 2010

Вы можете увидеть в MSDN: « String.IndexOf Method (String) ».

2 голосов
/ 26 апреля 2010

Код проверяет, содержит ли строка, содержащаяся в переменной exist, подстроку «true», и, если это так, выполняет блок «2-е условие», в противном случае - блок «1-е условие».

1 голос
/ 26 апреля 2010

выполнить первое условие, когда текст "true" не найден в строке exist, или выполнить второе условие, если оно найдено. .IndexOf возвращает положение строки, если найдено, и возвращает -1, если не найдено.

0 голосов
/ 26 апреля 2010

Похоже, exist содержит строку. Будучи верным, IndexOf возвращает индекс первого вхождения подстроки (в данном случае true). Если возвращается -1, то подстрока не найдена.

...