我究竟如何修复此错误?
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
The method methodName(className[], String, int) in the type Program is not applicable for the arguments ()
at Program.main(Program.java:43)
我的代码片段,调用方法:
public class Program {
public static void main(String[] args) throws FileNotFoundException {
methodName();
}
}
methodName代码:
public static void methodName(className[] array, String stringName, int counter){
//Code here
}
答案 0 :(得分:0)
您需要根据您现在未传递的methodName传递参数。
答案 1 :(得分:0)
您已声明methodName
为3个参数,这意味着每当您调用它时,您必须传递三个参数,否则您将收到此错误。原因是方法名称以及参数列表及其类型构成了所谓的方法签名,它唯一地标识了方法。
如果你试图在没有传递参数的情况下调用methodName()
,那么你实际上是在寻求一种不同的方法签名,在这种情况下是一种不存在的方法签名,这就是出错的地方。有两种方法可以解决这个问题:
实施methodName()
您可以为methodName()
编写一个完全没有参数的定义:
public static void methodName()
{
// Code that does not require any parameters
}
然后当你致电methodName()
时,你会得到你在这里写的代码。
致电methodName(arg1, arg2, arg3)
如果您实际传递了methodName
所有三个参数,您将获得标有“// Code here”的代码。还要确保你不只是传递任何类型的三个参数,但具体是
className[] arg1;
String arg2;
int counter;
// Initialize the values to whatever you want
methodName(arg1, arg2, arg3);
这将按照您的预期运行。