Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Присвоить значения многомерному массиву 
V
    Опции темы
freshAngel
  Дата 16.5.2009, 16:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 248
Регистрация: 1.10.2008

Репутация: нет
Всего: нет



Привет.
Код

class GameData
{
    
public GameData()
     {
    }
 
public int GameDataMatrix[][] = {{1,1,1},{1,1,1},{1,1,1}};
 
public void newGame()
{
GameDataMatrix[][] = {{2,2,2},{2,2,2},{2,2,2}}; // Ошибка здесь.
}


} // End class GameData


Не понимаю, почему не хочет присваивать массиву новые значения!?
Или только циклом по массиву можно!?
PM MAIL   Вверх
Connie
Дата 16.5.2009, 16:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 382
Регистрация: 12.8.2008

Репутация: 1
Всего: 9



Код

GameDataMatrix[][] = {{2,2,2},{2,2,2},{2,2,2}}; 
так можно писать только при иницализации переменной

Т.е. такое возможно тут
Код

public int GameDataMatrix[][] = {{1,1,1},{1,1,1},{1,1,1}};


А далее нужно перебирать все члены массива.
Либо сделать вот так:

Код

int NewGameDataMatrix[][] = {{1,1,1},{1,1,1},{1,1,1}};

GameDataMatrix = NewGameDataMatrix;

PM MAIL WWW   Вверх
rygel
Дата 16.5.2009, 16:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 110
Регистрация: 21.9.2007
Где: Харьков

Репутация: 6
Всего: 7



или так 

Код

GameDataMatrix = new int[][]{{2,2,2},{2,2,2},{2,2,2}};

PM MAIL   Вверх
freshAngel
  Дата 16.5.2009, 16:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 248
Регистрация: 1.10.2008

Репутация: нет
Всего: нет



Цитата(rygel @ 16.5.2009,  16:46)
или так 

Код

GameDataMatrix = new int[][]{{2,2,2},{2,2,2},{2,2,2}};

А в этом случае этот будет один и тот - же массив GameDataMatrix!?

[Добавлено]

Получается, тот - же.
Просто резервируем память и инициализируем массив с таким - же именем.
Получается как - бы создаем абсолютно новый массив.

Вопрос решен.
Всем спасибо! 

Это сообщение отредактировал(а) freshAngel - 16.5.2009, 17:01
PM MAIL   Вверх
rygel
Дата 16.5.2009, 17:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 110
Регистрация: 21.9.2007
Где: Харьков

Репутация: 6
Всего: 7



Цитата

А в этом случае этот будет один и тот - же массив GameDataMatrix!? 

Массив это объект. В данном случае GameDataMatrix это ссылка на объект массива которая инициализируется у тебя здесь:
Код

public int GameDataMatrix[][] = {{1,1,1},{1,1,1},{1,1,1}};


В первом варианте создается объект массива и объявляется ссылка на него - NewGameDataMatrix , далее ссылка GameDataMatrix переопределяется ссылкой NewGameDataMatrix.
Код

int NewGameDataMatrix[][] = {{1,1,1},{1,1,1},{1,1,1}};
GameDataMatrix = NewGameDataMatrix;


Во втором варианте сразу создается объект и ссылка на него присваивается твоей переменной GameDataMatrix.
Код

GameDataMatrix = new int[][]{{2,2,2},{2,2,2},{2,2,2}};


Таким образом в обоих случаях GameDataMatrix будет ссылаться на другой объект массива. В первом - посредством еще одной ссылки, во втором - непосредственно.

Это сообщение отредактировал(а) rygel - 16.5.2009, 17:06
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0737 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.