Method Class | isVarArgs() Method in Java
Last Updated :
10 Apr, 2023
The java.lang.reflect.Method.isVarArgs() method of Method class checks whether Method Object was declared to take a variable number of arguments or not. If the method can take a variable number of arguments then returns true otherwise it will return false. VarArgs(variable-length arguments): VarArgs allows method to accept a number of arguments. It is a better approach to pass arguments than array when it is not known how many arguments to pass in method.
Syntax:
public boolean isVarArgs()
Return Value: This method returns true if and only if Method has variable-length arguments else false.
Below programs illustrates isVarArgs() method of Method class:
Example 1: Below program checks GFG class methods whether Method has variable-length arguments or not. In this program a method accepts VarArgs and by isVarArgs() check method accept VarArgs or not and at last print the result.
Java
import java.lang.reflect.Method;
public class GFG {
public static void paint(Object... values)
{
String message = "A Computer Science portal for geeks";
}
public static void main(String args[])
{
try {
Method[] methods = GFG. class .getMethods();
for (Method method : methods) {
boolean isVarArgs = method.isVarArgs();
if (isVarArgs)
System.out.println(method + " method accepts VarArgs :"
+ isVarArgs);
}
}
catch (Exception e) {
e.printStackTrace();
}
}
}
|
Output:
public static void GFG.paint(java.lang.Object[]) method accepts VarArgs :true
Example 2: This program is going to return all the Methods which contains variable-length arguments of class java.util.Collections. Explanation: In this Method at first java.util.Collections Class Object is created. After creating Class Object of java.util.Collections Class a list of Method Objects is created by calling getMethods() of class Object. Iterate through Method list and get Method contains variable-length arguments using isVarArgs(). At last print Synthetic Method name.
Java
import java.lang.reflect.Method;
import java.util.Collections;
public class GFG {
public static void main(String args[])
{
try {
Class c = Collections. class ;
Method[] methods = c.getMethods();
System.out.println("Methods of Collections Class"
+ " contains VarArgs");
for (Method m : methods) {
if (m.isVarArgs())
System.out.println("Method: " + m.getName());
}
}
catch (Exception e) {
e.printStackTrace();
}
}
}
|
Output:
Methods of Collections Class contains VarArgs
Method: addAll
Reference:
Share your thoughts in the comments
Please Login to comment...