List的size大于0,但是取到的值为空

2019-03-25 13:41|来源: 网路

List的size大于0,但是取到的值为null,谁见过这种情况?
List list=XXDAO.findAll();
int i=0;
for(int i=0;i<list.size;i++){
XX xx = (XX) list.get(i);
}


list.size是大于O的,但是xx怎么取都是空对象,类型绝对没转错,用debug查的时候,get(i)就是null了,
实在想不明白了,望大哥们指点下
问题补充:
都实现了的,标准的hibernate DAO
问题补充:
Iterator iter = list.iterator();
各种遍历方式都试过了,没用
问题补充:
高建,我有3个字段都是null的,因为业务变更所以费掉了,我先做一下,然后再给你分,十分感谢
问题补充:
可是1千多条直接到LIST后,然后操作出现内存溢出异常,

有没有简单点的溢出解决方案?

相关问答

更多
  • 在 Python 中,最常用的数组是 list list_a = [1,2,3] list_void = [] print len(list_a) # 3 print len(list_void) # 0 # When list is void if len(list_void): print 'list is not void' else: print 'list is void' # or more directly if list_a: print 'list_a is not void' if no ...
  • 这个问题我这样回答: 你有一个盒子,盒子里面是可以放10苹果的,但是你没把苹果放进去。 但是这时候,别人问你的盒子是多大的啊?你就可以回答可以放10个苹果。但是,请注意这个但是,你的盒子里面是一个苹果都没有的,那你还怎么想把苹果拿出来呢?这不扯淡么? —————————————————————————————————————— 补充回答: 麻烦在getSource(PS:函数的命名。。。。首字母请不要用大写)函数的List list = this.getHibernateTemplate().find(hq ...
  • private Flycgdetail flyCGDetail; 这个东西,getter setter 方法没有,另外,只在类里初始化一下,又没从什么地方传过来,肯定会空指针啊~ if((cgList!=null && cgList.size()>0) ) 这段代码,这样写就可以if(cgList.size()>0)); Flycgdetail fc=new Flycgdetail(); 这个地方,在你页面调findByEmpNo()的时候,每次if(empNo>0)条件成立都会有一个新的对象生成,那肯定在 ...
  • 不是。list.size()。代表的是list里面有多少个元素。像你这个程序新new出来的,里面还没有存数据,那么就是0
  • 见下面的代码: var objects = RequestObjects.Where(r => r.RequestDate > ListOfDates.Max()); See code below: var objects = RequestObjects.Where(r => r.RequestDate > ListOfDates.Max());
  • greater_than_24<-unlist(lapply(find_gaps,function(x) length(which(x>=24)))) > as.data.frame(t(greater_than_24)) V1 V2 V3 1 1 1 2 或者 - 这将在列表的每个元素中提取大于24的值: greater_than_24<-lapply(find_gaps,function(x) x[which(x>=24)]) > as.data.frame(t(greater_tha ...
  • 这种行为(有时是有效的,有时不是)是由于尝试调用彩色小偷而没有加载图像,尝试使用onload事件: var el = document.getElementById(my_image_id); var img = new Image(); img.onload = function() { var dominantColor = colorThief.getColor(el); /* ... */ }; img.src = el.getAttribute('src'); That behavior ...
  • 使用LINQ: bool contains = yourList.Any(z => z.YouProperty > yourValue); Using LINQ: bool contains = yourList.Any(z => z.YouProperty > yourValue);
  • 在运行时增加列数据类型。 它证明了设计存在缺陷 。 你不应该在运行时修改表。 在您的要求中,没有理由将NUMBER存储为STRING 。 这肯定是性能下降的主要原因。 你应该选择适当的数据类型 ,在你的情况下应该是NUMBER 。 在每行插入时,count列的值增加1 理想情况下,您应该使用序列 。 根据您的数据库版本,有两种选择: Pre 12c发布 - 请参阅触发序列方法 12c以后 - 请参阅IDENTITY列 在附注中, CHAR数据类型存储固定长度的字符串。 理想情况下,应该使用VARCHAR2数 ...
  • 从应用程序员的角度来看,文件是一系列连续的字节。 连续写入将数据按顺序放置到文件上。 (此评论是必要的,因为有些人会争论与您的问题无关的细节)。 从而: fwrite(&user_record1, sizeof(user_record1), 1, fp); fwrite(&user_record2, sizeof(user_record2), 1, fp); 在文件中生成两个用户记录,一个紧跟另一个。 如果你有一个非常大的记录,那么将它分成两个较小的记录,如: fwrite(&user_record_pa ...