0

有什么方法可以让我的方法采用许多输入变量但没有重载......我的问题可能不清楚......我的意思是这样:

如果我有这个方法

public void setValues (int val1,int val2 ,String val3){
}

我想要的是:以多种方式使用此方法

setValues (val1,val2)

或者

setValues (val3)

为什么我想在不重载的情况下这样做:因为如果我有例如 10 个变量,我想添加许多重载方法,但我不喜欢那样......

有什么方法可以帮助我检查变量或以相同的方法跳过它..

感谢帮助 。

4

2 回答 2

2

您可以使用 varargs future 部分解决您的问题http://docs.oracle.com/javase/1.5.0/docs/guide/language/varargs.html 如果您有相同类型的参数,可以这样做。

但这将要求您传递与最后一个参数具有相同类型的变量。这并不完全是您想要的,但它是一个小的解决方法。

于 2012-10-10T21:29:19.367 回答
0

不,如果没有方法重载,Java 就无法做到这一点。一种替代方法是将那些相关的参数分组并使其成为类的字段。然后该方法将采用该类的实例作为参数,并且哪个参数是可选的然后将为空。

于 2012-10-10T21:19:47.767 回答