修改此参数后,使方法返回作为参数传递给它的方法是一种不好的做法吗?在Java中返回作为参数传递的参数是否是一种不好的做法?
public int[] arrayLeftRotation(int[] x) {
for(int i=0;i<x.length;i++){
x[i]=1;
}
return x;
}
与修改和返回参数副本相反。
public int[] arrayLeftRotation(int[] x) {
int[] y = x;
for(int i=0;i<y.length;i++){
y[i]=1;
}
return y;
}
只有当你不清楚你在做什么时才会有问题。 – khelwood
你没有做任何事情,你没有制作副本。 – matt
这取决于你期望与参数 发生什么你应该考虑你传递的参数的类型,例如,如果你传递一个对象并且你改变了引用或者它是一个原始变量 –