Android 方法:使我的方法具有多个输入变量,而不带out重载

Android 方法:使我的方法具有多个输入变量,而不带out重载,android,methods,overloading,Android,Methods,Overloading,有没有办法让我的方法接受许多输入变量,但不重载。。。可能是我的问题不清楚。。。我的意思是: 如果我有此方法 public void setValues (int val1,int val2 ,String val3){ } setValues (val3) 我想要的是:用多种方法使用此方法 setValues (val1,val2) 或 public void setValues (int val1,int val2 ,String val3){ } setValues (val3)

有没有办法让我的方法接受许多输入变量,但不重载。。。可能是我的问题不清楚。。。我的意思是:

如果我有此方法

public void setValues (int val1,int val2 ,String val3){
}
setValues (val3)
我想要的是:用多种方法使用此方法

setValues (val1,val2)

public void setValues (int val1,int val2 ,String val3){
}
setValues (val3)
为什么我想在没有重载的情况下这样做:因为如果我有10个变量作为示例,我想添加很多重载方法,但我不喜欢这样

有没有办法帮我检查变量或用同样的方法跳过它


谢谢您的帮助。

不,在Java中,如果没有方法重载,就无法做到这一点。另一种方法是对相关的参数进行分组,并使它们成为类的字段。然后,该方法将该类的一个实例作为一个参数,并且哪些参数是可选的,则将为null。

您可以使用varargs future部分解决您的问题 如果具有相同类型的参数,则可以执行此操作


但它需要传递与最后一个参数类型相同的变量。这并不完全是你想要的,但这是一个小的解决办法

谢谢我的朋友,如果你所有的变量都是同一类型的话,这真的很有帮助,但是我有一个方法,有10多个不同类型的变量,我不敢相信我必须为一件事添加6个以上的方法,这就是Java世界。它有一些局限性。