提问人:Fooze666 提问时间:3/22/2023 更新时间:3/22/2023 访问量:44
如何使 java 方法返回在对象列表中找到的对象?[复制]
How can I make a java method return an object found in a list of objects? [duplicate]
问:
我有这个代码:
public Task getTask(String taskID) {
for (Task item : tasks) {
if (item.getTaskID() == taskID) {
return item;
}
}
}
Task 是对象类型,“tasks”是包含 Task 类型的所有对象的列表。
我想遍历列表并找到taskID匹配的对象。这似乎有效,但是当我尝试测试或运行时,Eclipse告诉我,此方法“必须返回Task类型的结果”。
我不确定我做错了什么。如果每个“项目”都是列表中的一个项目,那么它不应该是 Task 类型吗?
我也尝试过按索引号遍历列表,但这似乎也不起作用。
答:
2赞
Mitsuo Mori
3/22/2023
#1
您可以使用 equals() 方法,而不是使用 '==' 来比较字符串。 这是因为“==”比较的是对象引用,而不是字符串本身的内容。
public Task getTask(String taskID) {
for (Task item : tasks) {
if (item.getTaskID().equals(taskID)) {
return item;
}
}
return null;
}
评论
tasks
for
null
taskID