|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
05.10.2017, 19:22 | #1 |
Пользователь
Регистрация: 22.12.2016
Сообщений: 22
|
Вопрос по работе с массивами
Привет.
У меня есть массив объектов класса Cell размером 10 на 10 (игровое поле): Cell[][] Area = new Cell[10][10]; У каждого объекта класса Cell есть свойство String status, которое по умолчанию имеет значение "empty". А также еще 2 свойства - координаты - int y, int x. У некоторого количества объектов Cell свойство status вскоре будет изменено на "filled", остальные останутся с "empty". Что нужно сделать: получить двумерный массив координат клеток со статусом "filled" (то есть массив интов y and x). Есть такая реализация: а) подсчитываю количество объектов со статусом "filled" б) зная точное количество, создаю массив с фиксированным размером и заполняю его Код:
Я пробовал использовать ArrayList, но не смог довести до конца.. Когда добавляешь в него какое-то одиночное значение, то всё просто.. Будь то стринг, инт или еще что-то.. А тут мне приходится добавлять массив. И извлечь этот массив потом через .iterator() мне не удалось. Забуксовал я на этот коде.. Кажется, рядом есть простое решение, но почему-то я его не вижу. |
05.10.2017, 22:03 | #2 |
Пользователь
Регистрация: 22.12.2016
Сообщений: 22
|
Решил-таки..
Код:
|
06.10.2017, 03:11 | #3 |
Форумчанин
Регистрация: 12.04.2017
Сообщений: 889
|
Хз, особо не думали, но уже видно типичная ошибка новичка - будут проблемы и внезапные краши
Код:
Код:
|
07.10.2017, 17:07 | #4 |
Пользователь
Регистрация: 22.12.2016
Сообщений: 22
|
Спасибо за ответ. Нет ничего полезнее конструктивной критики в этом деле
Только немного поясните.. Вы хотели сказать, что в моем коде Area[i][j] может быть null'ом, так? И если это так, то при вызове метода getStatus() выбосится исключение NullPointer. Соответственно, до сравнения со "ship" дело не дойдет - программа остановится. А если мы сравниваем стринг "ship" с Area[i][j].getStatus(), который оказывается null, мы просто получим false. Я верно понял вашу мысль? |
09.10.2017, 02:43 | #5 | |
Форумчанин
Регистрация: 12.04.2017
Сообщений: 889
|
Цитата:
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Borland c++ ошибка при работе с массивами | all_is_fear | Помощь студентам | 2 | 05.11.2011 23:11 |
Ошибка при работе с динамическими массивами | GBAXA | Общие вопросы Delphi | 16 | 30.03.2011 09:28 |
процедуры и функции при работе с массивами | irina belka | Помощь студентам | 1 | 12.12.2010 16:33 |
Функции и процедуры в работе с массивами | Qwerty91 | Помощь студентам | 0 | 13.12.2009 14:22 |
Программа по работе с массивами | Kamikadze_666 | Общие вопросы C/C++ | 2 | 16.12.2008 18:29 |