使用时使用java。get()对于ArrayList,该类无法将返回的元素识别为所需的对象
我试图使用for循环和if语句从ArrayList返回一个对象。Java似乎没有将列表中返回的元素识别为要返回的对象。有什么建议吗
import java.util.AbstractList;
import java.util.ArrayList;
public class RadioTowerController {
private AbstractList<RadioTower> alist = new ArrayList<RadioTower>();
public RadioTowerController(){
alist.add(null);
}
public void addRadioTower(RadioTower r){
alist.add(r);
}
public void removeRadioTower(RadioTower r){
for(int i = 0; i < alist.size(); i++){
if (alist.get(i).equals(r)){
alist.set(i, null);
}
}
}
public RadioTower findTowerforRadio(Radio r){
for(int i = 0; i < alist.size(); i++){
if(alist.get(i).covers(r)){
return alist.get(i);
}
}
}
}
# 1 楼答案
Java编译器希望确保该方法返回预期值。 在您的场景中,如果没有找到任何内容(或者列表为空),该方法将不会返回任何内容
您只需要添加在这种情况下使用的返回语句:
这里,如果没有找到任何内容,该方法将返回
null