我想创建一个方法,其中参数可以为空或填充。怎么做(使用什么?)
public static void Main() {
someMethod("John");
someMethod(10);
}
static void someMethod(String name, int age) {
System.out.println(name, age);
}
答案 0 :(得分:1)
您必须提供方法重载,这意味着 same 方法具有不同的参数:
static void someMethod(String name, int age) {
System.out.println(name + ": " + age);
}
static void someMethod(String name) {
System.out.println(name);
}
static void someMethod(int age) {
System.out.println(age);
}
然后您可以执行以下操作:
public static void main(String[] args) {
String john = "John";
int ten = 10;
someMethod(john, ten);
someMethod(john);
someMethod(ten);
}
顺便说一句,System.out.println(name, age);
行将无法编译...
答案 1 :(得分:0)
一种方法,而不是使用integer(int),而使用Integer或Long等。您可以将这些参数作为null传递,您不希望为其传递值,并检查它是否为非null,然后仅打印。 另一种方法是,您将必须传递具有多个数字的相同类型的变量,例如
static void someMethod(String... var) {
for(String x : var){
System.out.println(x);
}
}
或者您也可以传递包含键值的映射,然后对其进行迭代并打印。 因此,可以有多种解决方法。