对于find(ID)方法,为什么系统始终坚持要求返回类型的指导者

时间:2013-11-25 16:05:09

标签: java arraylist

对于find(ID)方法,为什么系统总是坚持要求返回类型的讲师,我想我已经声明“条目”是类型讲师。

// 1. TO DO
/** findID(String) is passed an id and returns the 
 *  Instructor object in the Instructor arraylist having that
 *  id or null if not found
 * @return 
 */

public Instructor findID (String id) {
    for (Instructor entry:instList) {
        if (entry.getId().equals(id) == true) {
            return entry;
        } else return null;
    }
}

1 个答案:

答案 0 :(得分:0)

我相信,您instList列表被声明为原始类型,即:

List instList = new ArrayList();

因此,编写代码的一种方法是使用类型声明instList

List<Instructor> instList = new ArrayList<Instructor>();

如果您不能这样做(即您从远程源获取此集合),您可以将其转换为所需类型:

for (Instructor entry: (List<Instructor>)instList) {
    ...
}

最后,您可以转换检索到的对象,而不是转换整个集合:

for (Object entry : instList) {
    Object instructor = (Instructor)entry;
    ...
}