![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 27.10.2016
Сообщений: 26
|
![]()
Народ, понимаю, что вопрос уже давно избитый.
Сколько не пытался, так и не понял как это сделать. Во всех примерах клонируют объект, создают для него интерфейс.. На моём этапе познаний всё чересчур запутанно. Есть переменная типа: ArrayList<ArrayList<Float>> data; (то есть список списков типа флоат). Нужно клонировать в другой ArrayList<ArrayList<Float>> cloned_data; Как это сделать? Нашёл библиотеку cloning-1.9.3, но у нее есть глюк, над которым автор еще работает, что не позволяет мне её использовать. На выходе я должен получить cloned_data, и при изменении его содержимого, это не должно сказываться на data. Заранее спасибо! |
![]() |
![]() |
![]() |
#2 |
Пользователь
Регистрация: 27.10.2016
Сообщений: 26
|
![]()
Неужели никто с этим не сталкивался?
|
![]() |
![]() |
![]() |
#3 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
![]()
Так а что мешает пройти в цикле копируя в новый список?
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 27.10.2016
Сообщений: 26
|
![]()
Всмысле? То есть нужно перебрать все переменные списка?
Я думал, что есть способы клонирования уже гттовые.. Например при обычном клонирование ни чего перебирать не нужно.. |
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 27.10.2016
Сообщений: 26
|
![]()
Вот нарыл инфу.. http://howtodoinjava.com/core-java/c...oning-in-java/
используют super.clone, а не clone. Но опять же, они определяют метод для клонирования. Но пример клонирования объекта. arraylist так же объект, но как ему этот супер клон определить..? |
![]() |
![]() |
![]() |
#6 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
![]()
"обычное клонирование" это как?
Для Float не нужен clone, он и так immutable. Поэтому ArrayList<Float> вроде можно скопировать через Код:
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
![]() |
![]() |
![]() |
#7 | |
Пользователь
Регистрация: 27.10.2016
Сообщений: 26
|
![]() Цитата:
Интересует другой момент: если оригинальный список объявить как static.. Можно ли будет его просто скопировать? Сейчас просто нет доступа к компу.. только вечером смогу поковыряться.. |
|
![]() |
![]() |
![]() |
#8 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
![]()
Значение чего? экземпляры Float immutable, их состояние никак не поменять.
Речь о ArrayList<Float>. А первый список (ArrayList<ArrayList...>) да, просто в цикле можно создать новые.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 27.10.2016
Сообщений: 26
|
![]()
Обычный клон, это который поверхностный, и он для моей цели не подходит.
Нужен метод глубокого клонирования... То есть нужно пеиеопределить метод клон для объекта arraylist, так, что бы он стал глубоким. А как именно это сделать я не врубаю.. хоть при еров в сети много, но они все на объекты созданные автором и мне не понятно как их применить у меня... |
![]() |
![]() |
![]() |
#10 | |
Пользователь
Регистрация: 27.10.2016
Сообщений: 26
|
![]() Цитата:
А что вы скажите на счет преписания к оригиналу static ? Это как то может помочь? То есть: static ArrayList<ArrayList<Float>> original . . какието действия по заполнению. Потом в другом методе этого же класса ArrayList<ArrayList<Float>> clon_data; clon_data=original; Это как то возможно? |
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
клонирование одностраничника | polinaemma | Фриланс | 1 | 11.03.2016 05:23 |
Qt, клонирование QObject | pproger | Qt и кроссплатформенное программирование С/С++ | 0 | 28.01.2012 16:02 |
Клонирование компонента | chandrasecar | Общие вопросы Delphi | 8 | 31.10.2010 17:57 |
Клонирование Windows XP | DJ HITMAN | Windows | 6 | 20.08.2010 13:35 |
Глубокое копирование | Chor | Общие вопросы .NET | 6 | 12.06.2009 01:19 |