0

我的搜索方法适用于一个单词字符串,但不适用于两个或更多单词。

我应该检查 titleToFind 是否与

ArrayList<DVD>DVDlist

我的搜索方法:

public DVD search(String titleToFind) {
    for (DVD dvdEntry : DVDlist) {
        if (dvdEntry.GetTitle().equalsIgnoreCase(titleToFind)) {
            return dvdEntry;
        }
    }
    return null;
}

我不知道如何解决这个问题。

4

1 回答 1

0

您的主要问题是您在第一次匹配时停止搜索(循环中的 return 语句)。下面是一个返回包含所有匹配项的列表的示例。

如果不允许使用列表,则可以返回 int(匹配数)或 csv 匹配。

public List<DVD> search(String titleToFind) {
    List<DVD> matches = new ArrayList<DVD>();    
    for (DVD dvdEntry : DVDlist) {
        if (dvdEntry.GetTitle().equalsIgnoreCase(titleToFind)) {
            matches.add(dvdEntry);
        }
    }

    return matches;
}
于 2013-04-04T17:53:03.400 回答