Как объявить неровный массив с "9HM.A2" - PullRequest
2 голосов
/ 04 апреля 2019

Мне нужно сделать это:

 string[][] anordinaryname = new string[][]
{
    new string[] {""},
    new string[] {""},
    new string[] {""},
    new string[] {""},
};

Это:

 string[][] 9HM.A2 = new string[][]
{
    new string[] {""},
    new string[] {""},
    new string[] {""},
    new string[] {""},
};

Мне нужно, чтобы он был отформатирован в точности так, но 9 в начале и.в середине вызывают проблемы.Есть ли какое-то решение?

Причина этого, когда я составляю расписание для своей школы.это период, поэтому мне нужно, чтобы пользователь ввел в поле ввода «9HM.A2», а затем перешел в этот массив, чтобы получить информацию, как это показано на графиках, которые нам даны.Это для школьного проекта.

Ответы [ 2 ]

4 голосов
/ 04 апреля 2019

Нет, вам не нужно, чтобы ваши переменные назывались так. Имена переменных существуют для разработчика, а не для конечного пользователя.

Если вам нужно искать данные на основе строки, используйте словарь:

var timeTable = new Dictionary<string, string[][]>
{
    { 
        "9HM.A2", new string[][]
        {
            new string[] {""},
            new string[] {""},
            new string[] {""},
            new string[] {""},
        }
    },
    { 
        "8XX.Z3", new string[][]
        {
            new string[] {""},
            new string[] {""},
            new string[] {""},
            new string[] {""},
        }
    },

}

Тогда вы можете получить значение по строке:

if (timeTable.TryGetValue("9HM.A2", out var userTimeTable))
{
    // use userTimeTable
}

И вам следует пересмотреть, является ли зубчатый массив подходящей структурой данных для ваших нужд; возможно, вам лучше создать класс для хранения этих данных.

2 голосов
/ 04 апреля 2019

Вы просто не можете иметь это имя переменной, точку остановки, конец истории.Давайте посмотрим документацию

Имена идентификаторов

Идентификатор - это имя, которое вы назначаете типу (класс, интерфейс, структура, делегат или перечисление),член, переменная или пространство имен. Допустимые идентификаторы должны соответствовать следующим правилам:

  • Идентификаторы должны начинаться с буквы или _.
  • Идентификаторы могут содержать Буквы Unicode , Десятичные цифры , Символы Unicode, соединяющие , Символы Unicode, объединяющие , или символы форматирования Unicode .

Как видите, полного останова / периода нет в списке.в свою очередь делая ваше имя переменной 9HM.A2 недопустимым

переименованием 9HM.A2 в _9HM_A2 или _9HMA2 (для забавного уровня 100)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...