Я делал игру ludo (для процессора и человека) с помощью java swing, используя Jframe. Есть в общей сложности 70 кнопок перемещения, я пытался создать три массива, два для размещения маркерных позиций двух игроков, а третий - для удерживания всех кнопок, но, похоже, проблема.Weird array glitch
private static javax.swing.JButton B1;
private static javax.swing.JButton B10;
private static javax.swing.JButton B11;
и так далее ...
static JButton[] allButtons = {B9, B10, B11, B12, B13, B14, B15, B16, B17, B18, B19, B20, B21, B22, B23, B24, B25, B26, B27,
B28, B29, B30, B31, B32, B33, B34, B35, B36, B37, B38, B39, B40, B41, B42, B43, B44, B45, B46,
B47, B48, B49, B50, B51, B52, B53, B54, B55, B56, B57, B58, B59, B60, B61, B62, B63, B64, B65,
B66, B67, B68, B69, B70};
static JButton[] positionsA = {null, null, null, null};
static JButton[] positionsB = {B40, null, null, null};
Теперь проблема это утверждение возвращает ложное
JButton moverB(){
System.out.println(allButtons[31]==positionsB[0]);
}
Оба индексов относятся к B40
Что происходит между инициализацией и вызовом 'moverB'? делает что-либо еще, изменяя любой массив? – dkatzel
Массивы не изменяются каким-либо образом. – Yottr
Вы инициализируете переменные 'B #' перед тем, как поместить кнопки в свои массивы? – khelwood