[ОТВЕТИТЬ]
Опции темы
22.01.2015 17:22  
KirillHome
Наткнулся на то, что желательно было бы использовать двумерный массив.
Казалось бы - что сложного?
Всё происходит &НаКлиенте

Вариант 1 //Просто объявить
Код:
ДвумМассив = Новый Массив (10,2);
//И дальше - заполнять
ДвумМассив[0][0] = "1-й индекс";
ДвумМассив[0][1] = "1-е значение";
ДвумМассив[1][0] = "2-й индекс";
ДвумМассив[1][1] = "2-е значение";
//и так далее...
Но этот вариант - как говорится - не наш метод.
Во-первых - надо заранее знать "количество пар", во-вторых - можно ошибиться в указании индекса (что я и сделал первоначально ).

Вариант 2 //Используем второй массив из двух элементов
Код:
ДвумМассив = Новый Массив;
ОднмМассив = Новый Массив(2);
//И дальше - заполнять
ОднмМассив[0] = "1-й индекс";
ОднмМассив[1] = "1-е значение";
ДвумМассив.Добавить(ОднмМассив);

ОднмМассив[0] = "2-й индекс";
ОднмМассив[1] = "2-е значение";
ДвумМассив.Добавить(ОднмМассив);
//И так далее.
И получил удивительный (для меня) результат.
Цитата:
ДвумМассив[0][0] равен "2-й индекс"
ДвумМассив[0][1] равен "2-е значение"
ДвумМассив[1][0] равен "2-й индекс"
ДвумМассив[1][1] равен "2-е значение"
вместо ожидаемых
Цитата:
ДвумМассив[0][0] равен "1-й индекс"
ДвумМассив[0][1] равен "1-е значение"
ДвумМассив[1][0] равен "2-й индекс"
ДвумМассив[1][1] равен "2-е значение"
При этом - если после первой итерации передать массив &НаСервер (к примеру, для вывода) - то результат становится правильным. Но не будешь же постоянно гонять данные между клиентом и сервером?

В результате заработал Вариант 3
Код:
ДвумМассив = Новый Массив;
ОднмМассив = Новый Массив(2);
//И дальше - заполнять
ОднмМассив[0] = "1-й индекс";
ОднмМассив[1] = "1-е значение";
ДвумМассив.Добавить(ОднмМассив);

ОднмМассив = Новый Массив(2);
//Заново объявил одномерный массив "новым".
ОднмМассив[0] = "2-й индекс";
ОднмМассив[1] = "2-е значение";
ДвумМассив.Добавить(ОднмМассив);
//И так далее.
и только тогда уже получил правильный результат
Цитата:
ДвумМассив[0][0] равен "1-й индекс"
ДвумМассив[0][1] равен "1-е значение"
ДвумМассив[1][0] равен "2-й индекс"
ДвумМассив[1][1] равен "2-е значение"
Попробовал заново объявлять "новый" одномерный массив - уже от безысходности. Но логики - всё равно не понял.

Поэтому - для памяти - оставлю здесь.
 
"Спасибо" KirillHome от:
 
Опции темы



Часовой пояс GMT +3, время: 04:17.

Все в прочитанное - Календарь - RSS - - Карта - Вверх 👫 Яндекс.Метрика
Форум сделан на основе vBulletin®
Copyright ©2000 - 2016, Jelsoft Enterprises Ltd. Перевод: zCarot и OlegON
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.