2016-06-21 1 views
-2

Я новичок в Java, и мне было интересно, при каких обстоятельствах мы должны создать копию переданного аргумента внутри метода, а когда не будем?Когда нужно создать копию переданного в аргументе внутри метода, а когда нет?

+1

Если вы планируете изменить его, и вызывающий абонент не ожидает вас. – shmosel

+1

Я не помню, когда я в последний раз создал копию. Очень редкая операция. – EJP

+0

@EJP, пожалуйста, объясните, почему создание копии - очень редкая операция в деталях? Ради вас за помощь! – Thor

ответ

1

См. Там может быть n количество сценариев, где вы можете сделать копию аргументов перед их работой, например.

  1. Предположим, если вы хотите сравнить аргументы с конечным результатом в методе, скажем, если вы получаете строку и в методе внести некоторые изменения на нем и сравнить по длине с передается в аргументе и т.д.
  2. В случае исключение, которое вы хотите отобразить/вернуть фактический аргумент обратно в вызывающий код. Точно так же может быть и много других причин.
+0

Строки неизменяемы. – shmosel