выберите случайный символ в строке по индексу - PullRequest
0 голосов
/ 07 февраля 2012

Я пытаюсь увидеть, равен ли второй символ 1, J, Q, K или A. Затем я хочу установить логическое значение для каждого из этих случаев. Это программа для блэкджека, которую я пишу.

Сдается колода и оценивается одна карта. Карточка - это строка, в которой задано случайное значение из массива карточек, значение будет что-то вроде «HK»

bool delt1 = card[1].Equals("1");
bool deltJ = card[1].Equals("J");
bool deltQ = card[1].Equals("Q");
bool deltK = card[1].Equals("K");
bool deltA = card[1].Equals("A");

Но я получаю сообщение об ошибке «Индекс вышел за пределы массива»

есть предложения?

1 Ответ

1 голос
/ 07 февраля 2012

Возможно, это решит вашу проблему, но у вас, вероятно, есть другие:

bool delt1, deltJ, deltQ, deltK, deltA;
if (card.Length >= 2)
{
    delt1 = card[1].Equals('1');
    deltJ = card[1].Equals('J');
    deltQ = card[1].Equals('Q');
    deltK = card[1].Equals('K');
    deltA = card[1].Equals('A');
}
else
    throw new Exception("Not enough characters in card to perform this check");
...