Так что мне всегда говорили, что модифицировать аргументы для методов - это плохая практика (по крайней мере, когда это не интуитивно понятно). Обычно я бы использовал что-то простое, например:
public Type method(Type Object) {
Type otherObject = Object.clone();
// do stuff to otherObject
return otherObject;
}
Это то, чем я занимаюсь довольно часто, слабо. Есть ли лучший способ сделать это?
Например, способ сделать так, чтобы java передавался по значению, а не по ссылке, чтобы изменение аргумента не имело непредвиденных последствий для пользователей моих классов.
Помимо того, что методы клонирования менее понятны (вроде), предположительно выполняются за время O (n), так что отсутствие необходимости делать это было бы неплохо.
Спасибо!