Переключатель C# со строкой. IsNullOrEmpty

UtilisateurServiceImp класс не является пружинным компонентом и не может быть введен в конструктор FormUserController. Вы должны добавить аннотацию @Component или определить ее в dispatcher-servlet.xml.

15
задан Mansfield 7 June 2012 в 16:26
поделиться

6 ответов

Я предложил бы что-то как следующее:

switch(text ?? String.Empty)
{
    case "":
        break;
    case "hi":
        break;
}

Это то, что Вы ищете?

30
ответ дан 30 November 2019 в 23:54
поделиться

Что случилось с Вашим примером switch оператор?

switch (text)
{
    case null:
    case "":
        foo();
        break;
    case "hi":
        bar();
        break;
}

Это работает (и по некоторым причинам который удивил меня - я думал, что это будет жаловаться или отказывать на null случай) и это ясно.

В этом отношении, почему Вы волнуетесь по поводу String.Empty? Я пропускаю что-то здесь.

23
ответ дан 30 November 2019 в 23:54
поделиться

как насчет

if (string.isNullOrEmpty(text))
{
   //blah
}
else
{
 switch (text)
 {
     case "hi":
 }

}

6
ответ дан 30 November 2019 в 23:54
поделиться

Из документации String.Empty:

Значение этого поля является строкой нулевой длины, "".

Я интерпретирую это, чтобы означать, что нет никакого различия между "" и String.Empty. Почему Вы пытаетесь различать их?

5
ответ дан 30 November 2019 в 23:54
поделиться

Пустая строка"", который равен Строке. Пустой. Причина, что можно поместить "" в оператор выбора, но не, "Представляет в виде строки. Пустой" настолько "Пусто", поле класса "Строка", и "" на самом деле постоянное значение.

Постоянные величины позволяются в случаях, Строке. Пустой поле и могло быть изменено во время выполнения. (В этом случае это останется тем же, но не все статические поля каждого класса постоянные величины.)

В случае того, 'если', то условие оценено во время выполнения и если не требует постоянной величины.

Я надеюсь, что это объясняет почему.

3
ответ дан 30 November 2019 в 23:54
поделиться

Something that I just noticed is that you can combine if/else and switch statements! Very useful when needing to check preconditions.

if (string.IsNullOrEmpty(text))
{
    //blah
}
else switch (text)
{
    case "hi":
        Console.WriteLine("How about a nice game of chess?");
        break;
    default:
        break;
}
3
ответ дан 30 November 2019 в 23:54
поделиться
Другие вопросы по тегам:

Похожие вопросы: