| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java: Общие вопросы > Копирование массивов |
| Автор: Sherst 21.9.2006, 15:28 | ||||||||||
| Привет всем! Я наверное туплю, и все же вопрос Допустим есть класс SelectItem
Есть ArrayList с заполненными данными:
Необходимо создать массив ссылок SelectItem:
И скопировать значения из ArrayList в массив SelectItem[].Вот тут и начинаются проблемы.Есть метод toArray:
Но здесь не понятно как инициализируются поля SelectItem - value, label, description И соответсвенно получаю исключение ArrayStoreException Вообщем вот такой вопрос. И еще значения полей value, label, description должны быть одинаковыми
За ранее спасибо. |
| Автор: powerOn 21.9.2006, 15:46 |
| Напиши свой метод копирования в массив, который учитывает все тонкости. |
| Автор: COVD 21.9.2006, 15:56 | ||
Метод toArray() возвращает Object[] , а toArray(objet) возвращает массив класса обьекта, который в аргументе. Обьект в аргументе должен быть того же класса, что и элементы в коллекции и кастинг внутри делается. Это просто для удобства, никаких чудес.
таким образом возвращается копия ссылок в виде массива размером 10. Синхронизировать эту операцию тоже самим надо, если необходимо. |
| Автор: Sherst 21.9.2006, 16:51 |
| to COVD Спасибо за разъяснения |
| Автор: VSergeyV 4.8.2009, 06:16 | ||
А у меня требует фигурные скобки {}, иначе array dimension missing с ними работает
jdk 1.6.0_11 Синтаксис чтоли поменяли? |
| Автор: 4EJIOBEK 4.8.2009, 08:47 |
| не поменяли, просто при создании массива нужно либо задавать размерность в [], либо инициализировать массив элементами в {елем1, елем2,...} |