У переключателя / кейса есть два аспекта:
- Значение, которое вы включаете
- Кейсы, к которым вы хотите перейти
Тот факт, что вы получаете значение из массива, не имеет значения.Это эквивалентно:
string value = menuItems[0, 0];
switch (value)
{
}
Ваши случаи также являются постоянными строковыми значениями, так что это тоже хорошо.(Там есть дублирование, приводящее к хрупкому коду, который вы, возможно, захотите устранить, но это отдельный вопрос.)
... и это нормально.Не совсем понятно, какая у вас проблема в данный момент, хотя также неясно, почему у вас вообще есть прямоугольный массив, учитывая, что у вас есть только один «столбец» на строку.Почему бы просто:
public static string[] menuItems = new string[]
{
"Add Entry",
"Delete Entry",
"Print Book to Screen",
"Edit Contact",
"Exit"
};
(Оставляя в стороне наименование, доступность, изменчивость и т. Д.)