Альтернатива if-else - PullRequest
2 голосов
/ 19 марта 2009

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

if (myArray[0][0] == 1 && myArray[0][1] == 1 && myArray[0][2] == 1){
    setBoolWinVal = true;
} else {
    if(myArray[0][0] == 2 && myArray[0][1] == 2 && myArray[0][2] == 2){
    setBoolWinVal = true;
}

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

Ответы [ 12 ]

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

Если все массивы одинаковой длины, то следующее должно помочь.

Arrays.equals(myArray[0], {1,1,1})

В противном случае напишите функцию, которая перебирает все значения в myArray[0].

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

Запах домашней работы.

Небольшой совет - используйте для циклов, и он будет работать для любого размера, который вы хотите. Бонусные баллы, если вы используете рекурсию вместо этого.

Определение: Рекурсия -> см. Рекурсия

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