本文概述
varrags允许该方法接受零个或多个参数。在使用varargs之前, 我们要么使用重载方法, 要么使用数组作为方法参数, 但由于它会导致维护问题, 因此被认为是不好的。如果我们不知道必须在方法中传递多少个参数, 则使用varargs是更好的方法。
Varargs的优势
我们不必提供重载的方法, 因此代码更少。
varargs的语法
可变参数使用省略号, 即数据类型后的三个点。语法如下:
return_type method_name(data_type... variableName){}
Java中的Varargs的简单示例:
class VarargsExample1{
static void display(String... values){
System.out.println("display method invoked ");
}
public static void main(String args[]){
display();//zero argument
display("my", "name", "is", "varargs");//four arguments
}
}
立即测试
Output:display method invoked
display method invoked
Java中的另一个Varargs程序:
class VarargsExample2{
static void display(String... values){
System.out.println("display method invoked ");
for(String s:values){
System.out.println(s);
}
}
public static void main(String args[]){
display();//zero argument
display("hello");//one argument
display("my", "name", "is", "varargs");//four arguments
}
}
立即测试
Output:display method invoked
display method invoked
hello
display method invoked
my
name
is
varargs
可变参数规则
使用varargs时, 必须遵循一些规则, 否则程序代码将无法编译。规则如下:
- 该方法中只能有一个变量参数。
- 可变参数(varargs)必须是最后一个参数。
无法编译的可变参数的示例
void method(String... a, int... b){}//Compile time error
void method(int... a, String b){}//Compile time error
Varargs示例, 它是方法中的最后一个参数:
class VarargsExample3{
static void display(int num, String... values){
System.out.println("number is "+num);
for(String s:values){
System.out.println(s);
}
}
public static void main(String args[]){
display(500, "hello");//one argument
display(1000, "my", "name", "is", "varargs");//four arguments
}
}
立即测试
Output:number is 500
hello
number is 1000
my
name
is
varargs
评论前必须登录!
注册