0
我有以下代码:是修改输入参数并返回错误的方法吗?
public class MyClass
{
....
}
public static MyClass MyClassModifier(MyClass myinstance)
{
......
return myinstance;
}
在我看来,那久违MYINSTANCE实际上并没有做任何事情,在这里,换句话说这一点,实现了与上面相同的代码(只要MYINSTANCE未分配在方法的另一个对象):
public static void MyClassModifier(MyClass myinstance)
{
......
}
我可以,当然,这样做:
public static MyClass MyClassModifier(MyClass myinstance)
{
......
return new MyClass();
}
但这似乎很笨重,如果MyClass的构造函数有很多参数,这会变得非常笨重,所以问题是,哪一个更可取,为什么?
从函数式编程的角度来看,似乎最后一个是要走的路,但我不确定这是最好的方法。
感谢您的回答,这几乎是我想象的。 关于变异输入值vs创建一个新的例子,我实际上想到的例子包括一个List作为输入值 – ManyRootsofAllEvil 2014-12-07 18:49:26