Копия возврата Java для сокрытия будущих изменений

Идея получает анонимный объект с элементом и случайным порядком, а затем переупорядочивает элементы этим порядком и возвращает значение:

var result = items.Select(x => new { value = x, order = rnd.Next() })
            .OrderBy(x => x.order).Select(x => x.value).ToList()
5
задан display_name 30 January 2014 в 07:15
поделиться

3 ответа

Превратите это в спецификацию:
- это возражает потребности реализовать интерфейс для разрешения в набор Чего-то как ArrayList<ICloneable>()

Затем Вас можно уверить, что Вы всегда делаете глубокую копию - интерфейс должен иметь метод, который, как гарантируют, возвратит глубокую копию.

Я думаю, что это является лучшим, можно сделать.

4
ответ дан 14 December 2019 в 09:05
поделиться

Одна опция состоит в том, чтобы использовать сериализацию. Вот сообщение в блоге, объясняя это:

http://weblogs.java.net/blog/emcmanus/archive/2007/04/cloning_java_ob.html

2
ответ дан 14 December 2019 в 09:05
поделиться

Я предполагаю, что это - ответ ovbious:

Сделайте необходимое для классов сохраненным в наборе, чтобы быть cloneable. Вы могли проверить, что во время вставки или во время поиска, независимо от того, что имеет больше смысла, и выдают исключение.

Или если объект не cloneable, просто возвратитесь к состоянию до сбоя к возврату ссылочной опцией.

1
ответ дан 14 December 2019 в 09:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: