我在这里看到另一篇文章描述似乎我的 问题: How to make a method which accepts any number of arguments of any type in Java?
然而,当我尝试使用此方法时,当我编译程序时,它给了我错误 “int不能转换为java.util.Objects“
我做错了什么?
public static void clearArray (Objects... args)
{
System.out.println("Error, non character value");
}
import java.util.Objects;
// Stuff...
clearArray(1);
// Other stuff...
感谢您查看我的问题!
答案 0 :(得分:7)
查看签名
public static void clearArray (Objects... args)
该方法接收对象类型,并将整数传递给它。也许将其改为
public static void clearArray (Object... args)
可帮助。
答案 1 :(得分:6)
您需要java.lang.Object
,而不是java.util.Objects
。
java.util.Objects
是一个带有实用程序方法的类,而不是一个可以实际扩展和实例化的类。
java.lang.Object
是Java中所有对象的超类。
即使在多参数(varargs)方法中,签名也必须是Object ...
,而不是Objects ...
。