我用的是  MyEclipse 6.5
项目建的时候是建的 5.0 版本的public List getFailItems() throws AuctionException {      try{
    List result=new ArrayList();
    List items=itemDao.findItemByState(3);//通过拍卖物品的状态获取在该状态下的所有物品

   //Type mismatch: cannot convert from Iterator to CompactShortArray.Iterator  此处报这个错    for (Iterator it = items.iterator() ; it.hasNext(); )
            {
                Item item = (Item)it.next(); //Cannot cast from char to Item 此处报这个错                ItemBean ib = new ItemBean();
                initItem(ib,item);
                result.add(ib);
            }
            return result; }catch(Exception e){
log.debug(e.getMessage());
throw new AuctionException("查询流拍物品出现异常,请重试");
}
return null;
}
请问一下各位大虾知不知道这个问题该怎么解决啊??我现在想用for循环将拍卖品全部都遍历出来。。在itemDao.findItemByState(3)中返回的是List<Item>类型的。现在我只想用Iterator将其遍历出来,而不想用别的方法(现在正在学习Iterator接口),请各位大虾指点一下!

解决方案 »

  1.   

    import错了一个Iterator类了吧
    不是CompactShortArray.Iterator,是java.util.Iterator
      

  2.   

    看看你引用的是不是java.util.*这个包
      

  3.   

    //Cannot cast from char to Item 此处报这个错类型强转报错啊,(Item)it.next(),it.next的值是char类型
    你试图将一个char类 强制转换为 Item,转换失败
      

  4.   

    //Cannot cast from char to Item 此处报这个错类型强转报错啊,(Item)it.next(),it.next的值是char类型
    你试图将一个char类 强制转换为 Item,转换失败
      

  5.   

    //Cannot cast from char to Item 此处报这个错
    这个错误应该不是楼上所说的那个问题吧!!!
    应该是获取到了list中的对象但是这个对象的类型是char类型的,lz强制转换为Item类型抛了这个异常。
    lz可以分析一下,list中封装的是什么东东!!!
      

  6.   

    你在import Iterator这个类的时候一定是加错了,加成了Discript.Iterator这个类了,而实际上你要加的是java.util.Iterator这个类.这样一改你就对了