让这个方法有效的问题。它位于一个单独的类中,调用另一个对象类来搜索一系列书籍。我有3个其他类似的方法也在进行搜索,但是针对不同的查询。
public static void searchForTitle(Book[] theBooks)
{
String message;
String searchTitle;
searchTitle = JOptionPane.showInputDialog("Enter title to search");
message = Book.findBookByTitle(theBooks, searchTitle);
JOptionPane.showMessageDialog(null, message);
}//end searchForTitle method
这是对象类中与上述方法相对应的方法,我似乎无法在这里找到问题,并且我收到的所有4个进行搜索的方法的编译器错误都是:
TestBook.java:73: findBookByTitle(java.lang.String,Book[]) in Book cannot be applied to (Book[],java.lang.String)
message = Book.findBookByTitle(theBooks, searchTitle);
以下对象方法
public static String findBookByTitle(String titleSearched, Book[] arrayOfBooks)
{
String message = "";
for(int i = 0; i < getNumberOfBooks(); i++)
{
if(titleSearched.equalsIgnoreCase(arrayOfBooks[i].getTitle()))
{
message = message + arrayOfBooks[i].toString();
}//end if
}//end for
return message;
}//end findByTitle
答案 0 :(得分:2)
您的参数顺序错误。将其更改为:
message = Book.findBookByTitle(searchTitle, theBooks);