请当一个select 语句的返回结果集用ArrayList来接收时,ArrayList中的内容是否只有一行 代码看上去没有问题,符合java的语法,你写得太少了,看不出问题在哪里 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 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的理解好像上面的写法只是取得同一行数据 为什么有一个hasNext(),就要调用3个next()?如果只有一个了,岂不是要出错?除非特殊处理过,有3n个 我觉得你的代码有问题,首先al是ArrayList类型,而ArrayList类型的对象是没有iterator()方法的,iterator()必须是实现list接口的类才有的.其次,即使退一步说有这个al.iterator(),那么据我所知,好象当使用数据库返回结果集时,不一定是按照顺序返回的,所以你上面分别用几个next()赋值是否对的上有不确定因素 我的意思是返回的结果集中为gcxmdm,gcxmmc,ywcgzl三列,可能有多行,但我不是很清楚怎么取。书上中讲到取一列的例子 我的了解:(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 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.zipHttp://www.ChinaOK.net/csdn/csdn.rarHttp://www.ChinaOK.net/csdn/csdn.exe [自解压] 谢谢楼上几位的指点,好像有点明白了,但做Ejb的同志还没有完成,所以暂时没法测试! 现在已经解决,我用collection 来取得Ejb返回的内容,然后再实例化一个vector,然后从vector中取数据就行了 java 中接收键盘录入共有几种方法? 学生 求解 请问下设计模式那本书比较好啊? 判断传入的字符串对象是整型的最标准方法是什么? 如何让软件中分隔窗体的分隔栏可以随意拖动啊? 关于swing控件的问题 寻visibroker for java 4.51 的注册码? 同一目录下的两个文件互相调用的问题,急急急 大家帮我看下我自己练习的代码错在哪了 java字符串转换为16进制问题 如何获取系统的环境变量?? 我想用APPLET实现读取客户端的图片文件,该如何实现?
ls_gcxmdm = (String)i.next();
ls_gcxmmc = (String)i.next();
ls_ywcgzl = (String)i.next();
out.println(ls_gcxmdm +"##" + ls_gcxmmc +"##" +ls_ywcgzl) }
我是觉得上面的代码不可思议,我对Iterator的理解好像上面的写法只是取得同一行数据
如果只有一个了,岂不是要出错?除非特殊处理过,有3n个
iterator()方法的,iterator()必须是实现list接口的类才有的.其次,即使退一步说有这个al.iterator(),那么据我所知,好象当使用数据库返回结果集时,不一定是按照顺序返回的,所以你上面分别用几个next()赋值是否对的上有不确定因素
(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
如果要取得三个列,应该是从返回的对象中取得
比如下面
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 [自解压]