郁闷了半天,,求助
public Item getItemList(){Iterator temp=items.values().iterator();
while(temp.hasNext()){
return (Item)temp.next();
}
}
getItemList()是个method
item是我写的一个class
.values()是HashMap 里的method
现在显示有问题 说 没有返回 item这个类 有哪位朋友能看出来问题在哪么。。。
多谢
----------------解决方案--------------------------------------------------------
如果temp.hasNext()是false呢,
该函数不是没有返回值么?而函数声明返回为Item类型...
冲突..
----------------解决方案--------------------------------------------------------
应该使用泛型.这样就不用转类型了.
----------------解决方案--------------------------------------------------------
回复:(luoxian_2003)如果temp.hasNext()是false呢,...
你说的我也想到过,加入一个if后还是不行
[此贴子已经被作者于2007-9-14 10:21:15编辑过]
----------------解决方案--------------------------------------------------------
public Item getItemList(){
Iterator temp=items.values().iterator();
while(temp.hasNext()){
return (Item)temp.next();
}
return null;
}
这样呢?
----------------解决方案--------------------------------------------------------
好了! 多谢阿 这个 null 覆盖了while里可能产生的false 是么?
多谢!
----------------解决方案--------------------------------------------------------
因为你的函数要有返回值,但是当你的循环不满足的时候,退出后没有返回值。所以会报错。必须要返回一个值。
----------------解决方案--------------------------------------------------------
在条件判断里面,要写两个return,一个是true时的返回,一个是false的返回
----------------解决方案--------------------------------------------------------
恩 谢谢各位
----------------解决方案--------------------------------------------------------