当前位置: 代码迷 >> Java相关 >> 郁闷了半天,,求助
  详细解决方案

郁闷了半天,,求助

热度:36   发布时间:2007-09-14 09:35:02.0
郁闷了半天,,求助
public Item getItemList(){
Iterator temp=items.values().iterator();
while(temp.hasNext()){
return (Item)temp.next();
}
}

getItemList()是个method
item是我写的一个class
.values()是HashMap 里的method
现在显示有问题 说 没有返回 item这个类 有哪位朋友能看出来问题在哪么。。。
多谢
搜索更多相关的解决方案: 朋友  public  return  method  

----------------解决方案--------------------------------------------------------
如果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的返回
----------------解决方案--------------------------------------------------------

恩 谢谢各位


----------------解决方案--------------------------------------------------------
  相关解决方案