Java 中的可变参数是什么?
java 8object oriented programmingprogramming更新于 2025/11/20 7:08:17
定义方法时,通常我们会将其接受的参数及其类型指定为 −
myMethod(int a, String b){
}
假设您需要接受多个相同类型的变量,则需要将这些变量依次指定为 −
myMethod(int a, int b, int c){
}
您还可以向方法传递可变数量的特定类型的参数。这些被称为可变参数或 varargs。它们用三个点 (…) 表示。
语法
public myMethod(int ... a) {
// 方法主体
}
一旦您在调用时使用可变参数作为参数方法,您就可以向此方法传递任意数量的参数(可变数量的参数),或者,您可以直接调用此方法而不传递任何参数。
示例
public class Sample{
void demomethod(String... args) {
for (String arg : args) {
System.out.println(arg);
}
}
public static void main(String args[] ){
new Sample().demomethod("Ram", "Rahim", "Robert");
new Sample().demomethod("Krishna", "Kasyap");
new Sample().demomethod();
}
}
输出
Ram Rahim Robert Krishna Kasyap
示例
public class VarargsExample{
void demoMethod(String name, int age, int... marks) {
System.out.println();
System.out.println("Name: "+name);
System.out.println("Age: "+age);
System.out.print("Marks: ");
for (int m: marks) {
System.out.print(m+" ");
}
}
public static void main(String args[] ){
VarargsExample obj = new VarargsExample();
obj.demoMethod("Krishna", 23, 90, 95, 80, 69 );
obj.demoMethod("Vishnu", 22, 91, 75, 94 );
obj.demoMethod("Kasyap", 25, 85, 82);
obj.demoMethod("Vani", 25, 93);
}
}
输出
Name: Krishna Age: 23 Marks: 90 95 80 69 Name: Vishnu Age: 22 Marks: 91 75 94 Name: Kasyap Age: 25 Marks: 85 82 Name: Vani Age: 25 Marks: 93
在 Java 中使用可变参数时应遵循的规则 −
每个方法只能有一个可变参数。如果尝试使用多个可变参数,则会生成编译时错误。
在方法的参数列表中,可变参数必须是最后一个。否则将生成编译时错误。

