Мне нужно сделать глубокую копию ArrayList типа long как для методов доступа, так и для методов мутатора. Я пытался найти это, но что бы я ни нашел и не попробовал, мои тесты показывают, что мутатор не копирует полностью ArrayList. Этот список ArrayList называется «транзакциями» и содержится в подклассе «CustomerData», суперклассом которого является «PersonData».
Вот мой мутатор:
public ArrayList<Long> getTransactions() {
if (transactions == null) throw new IllegalArgumentException();
final ArrayList<Long> copy = new ArrayList<Long>(transactions.size());
for(Long l : transactions) {
copy.add(new Long(l.intValue()));
}
return copy;
}
Что насчет неправильного ?