从ArrayList返回特定元素,但类型不匹配错误?

詹姆斯·戴维斯·史密斯

我目前正在第二学期学习Java,对于这个项目,我们应该一起使用ArrayLists,增强的for-each循环和线性搜索。对于该项目,我正在创建一个任务管理器,并且希望通过这种方法在ArrayList中搜索日期,然后以正确的日期返回整个任务。我从“类型不匹配:无法从Task转换为ArrayList”下面突出显示的行中收到此错误,由于分配准则,此方法必须将其作为ArrayList返回,我在做什么错?以及我该如何解决?

public ArrayList<Task> findTasksByDate(Date date) {
            while(i<taskMan.size()); {
            for (Task element: taskMan) {
                if (date.equals(taskMan.get(i).getDueDate())) {  
                return taskMan.get(i);//error with this line
                }
                return null;
            }
            i++;
        }
}
格雷格

要返回ArrayList,您需要声明一个本地ArrayList,将元素添加到列表中,然后返回列表。像这样:

public ArrayList<Task> findTasksByDate(Date date) {
            ArrayList<Task> returnList = new ArrayList<Task>();
            while(i<taskMan.size()); {
            for (Task element: taskMan) {
                if (date.equals(taskMan.get(i).getDueDate())) {  
                   returnList.add(taskMan.get(i));
                return returnList;
                }
                return null;
            }
            i++;
        }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章