System.IndexOutOfRangeException: 'Индекс находился за пределами массива.' в приложении xamarin - PullRequest
0 голосов
/ 19 марта 2020

У меня проблема с этим. Я пытаюсь создать список с количеством символов (должно быть 2 каждого). Иногда работает, а иногда выдает эту ошибку:

System.IndexOutOfRangeException: 'Индекс находился за пределами массива.'

Код:

static int[] letras = new int[16];

string[] simbolo = new string[]{"A","B","A","B","C","D","C","D","E","F","E","F","G","H","G","H"};

for (int i = 0; i < letras.Length; i++){
    letras[i] = Convert.ToString(simbolo)[alea.Next(0, simbolo.Length)];
}

Это приложение Xamarin C# ...

1 Ответ

0 голосов
/ 19 марта 2020

Как упоминал Джон Скит.

Convert.ToString(simbolo) фактически преобразовал бы тип simbolo в строку, то есть - System.String[] не фактическая строка, которую вы намеревались.

Измените свой код как ниже -

static int[] letras = new int[16];

string[] simbolo = new string[]{"A","B","A","B","C","D","C","D","E","F","E","F","G","H","G","H"};

for (int i = 0; i < letras.Length; i++){
    letras[i] = string.Join("", simbolo);[alea.Next(0, simbolo.Length)];
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...