有没有办法让这段代码更加简洁,以免有那么多重载方法?
public void method(String[] args1, String[] args2){}
public void method(String[] args1, String args2){}
public void method(String args1, String[] args2){}
public void method(String args1, String args2){}
重载方法的数量随着参数数量的增加而呈指数增长。这显然是一个问题,我知道必须有一种更简单的方法来做到这一点。
我们的目标是找到最佳方法来传递任意数量的相同类型的对象作为参数,而无需使用数组进行单对象输入。
为什么?这是为了让最终程序员变得简单。最佳答案
也许,如果您有大量参数,并且将来可以增加,那么最好将它们全部包装在单独的类中,即 InputParams 并仅将此类的一个实例传递给该方法。考虑下一个代码:
InputParam ip = new InputParam();
ip.setField1(field1);
//...
// usage
this.method(ip);
// declaration
public void method(InputParams arg){}
附注但是,正如其他人提到的,这实际上取决于许多条件以及您想要实现的目标。
关于java - 可选数组支持的重载 - Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17826151/