代码看上去没有问题,符合java的语法,你写得太少了,看不出问题在哪里

解决方案 »

  1.   

    while (i.hasNext()){
       ls_gcxmdm = (String)i.next();
       ls_gcxmmc = (String)i.next();
             ls_ywcgzl = (String)i.next();
    out.println(ls_gcxmdm +"##" +  ls_gcxmmc +"##" +ls_ywcgzl)  }
    我是觉得上面的代码不可思议,我对Iterator的理解好像上面的写法只是取得同一行数据
      

  2.   

    为什么有一个hasNext(),就要调用3个next()?
    如果只有一个了,岂不是要出错?除非特殊处理过,有3n个
      

  3.   

    我觉得你的代码有问题,首先al是ArrayList类型,而ArrayList类型的对象是没有
    iterator()方法的,iterator()必须是实现list接口的类才有的.其次,即使退一步说有这个al.iterator(),那么据我所知,好象当使用数据库返回结果集时,不一定是按照顺序返回的,所以你上面分别用几个next()赋值是否对的上有不确定因素
      

  4.   

    我的意思是返回的结果集中为gcxmdm,gcxmmc,ywcgzl三列,可能有多行,但我不是很清楚怎么取。书上中讲到取一列的例子
      

  5.   

    我的了解:
    (1):Iterator是Collection的一个接口;
    (2):Collection接口下面有Set接口、List接口;Map也是一种接口,但不在Collection接口中;
    (3):实现Set接口的类有HashSet等;实现List接口的类有ArrayList等;实现Map接口的类有HashMap、HashTable等;
    示例程序:
      
     ArrayList arrDepart = DepartmentIdBean.listDepartmentByUsed(DepartmentIdBean.USED);
      if (arrDepart !=null){  
      Iterator iterDepart = arrDepart.iterator();
      while(iterDepart.hasNext()){
        DepartmentModel departModel = (DepartmentModel) departiter.next();
    ...
    分析程序:arrDepart是个ArrayList类,访问这个类中所有元素的方法是用iterator方返回一个Iterator类型的对象iterDepart
      

  6.   

    iterator一次只能返回一个对象
    如果要取得三个列,应该是从返回的对象中取得
    比如下面
    Object o=(Object)i.next();
    a=o.getColumn(0);
    b=o.getColumn(1);
    c=o.getColumn(2);================================================================CSDN 论坛助手 Ver 1.0 B0402提供下载。 改进了很多,功能完备!★  浏览帖子速度极快![建议系统使用ie5.5以上]。 ★  多种帖子实现界面。 
    ★  保存帖子到本地[html格式]★  监视您关注帖子的回复更新。
    ★  可以直接发贴、回复帖子★  采用XML接口,可以一次性显示4页帖子,同时支持自定义每次显示帖子数量。可以浏览历史记录! 
    ★  支持在线检测程序升级情况,可及时获得程序更新的信息。★★ 签名  ●  
         可以在您的每个帖子的后面自动加上一个自己设计的签名哟。Http://www.ChinaOK.net/csdn/csdn.zip
    Http://www.ChinaOK.net/csdn/csdn.rar
    Http://www.ChinaOK.net/csdn/csdn.exe    [自解压]
      

  7.   

    谢谢楼上几位的指点,好像有点明白了,但做Ejb的同志还没有完成,所以暂时没法测试!
      

  8.   

    现在已经解决,我用collection 来取得Ejb返回的内容,然后再实例化一个vector,然后从vector中取数据就行了