我有一个方法可以返回我的POJO的值。
我的POJO课程的名称是Tail
。
public Tail getTail(long value1, String value2, int value3) {
List<Tail> l = /*I get this list via Hibernate. */
if (l.size() == 1) {
return (Tail) l.get(0);
}
else if (l.size() > 1) {
for (Tail t : l) {
First ik = minorDAO.getFirst(value3, t.getNumber());
if( ik.getCond().equals("I") ){
t.setCond("I");
continue;
} else {
return t; //???????????????
}
}
} else {
return null;
}
}
在foreach循环中的else语句中,问号注释是我要返回t,但是如果我这样做,我会收到错误说明:
“此方法必须返回Tail类型的结果”。
如何在那里返回值?
答案 0 :(得分:0)
使用该代码,您不会收到消息:
public Tail getTail(long value1, String value2, int value3) {
List<Tail> l = --> (I get list via Hibernate.)
if (l.size() == 1) {
return (Tail) l.get(0);
} else if (l.size()>1){
for (Tail t: l) {
First ik = minorDAO.getFirst(value3, t.getNumber());
if( ik.getCond().equals("I") ){
t.setCond("I");
continue;
} else {
return t;
}
}
}
return null;
}
如果该方法必须返回Tail
,则必须在任何可能的情况下提供该方法。
例如:
如果在这种情况下每个元素都是true
:
if( ik.getCond().equals("I") ){
没有回报。你迭代整个列表,没有任何反应......