java中list的值是[null] 而不是 null ,结果集其实是空的,但是返回的却是[null],size=1,这如何判断
思路肯定是一样的,但这个list的结果是[null],带了[],把null当成是集合的内容了。(正常的都是list=null)。之前报错原因是list.get(0).to...
思路肯定是一样的,但这个list的结果是[null],带了[],把null当成是集合的内容了。(正常的都是list=null)。之前报错原因是list.get(0).toString(), 不能toString(). 已经解决了, 方法 Object obj=list.get(0); 判断obj==null,而不是字符串,或者list.get(0)==null,这样就可以判断了。
展开
5个回答
展开全部
简单啊
if(list.size()==1&&"[null]".equals(list.get(0))||list.size()==0){
//list是空的
}else{
//list不是空的
}
if(list.size()==1&&"[null]".equals(list.get(0))||list.size()==0){
//list是空的
}else{
//list不是空的
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
代码: List a = new ArrayList();
System.out.println("a.size()="+a.size());
System.out.println("a.get(0)="+a.get(0));
控制台结果: a.size()=0
Exception in thread "main" java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
at java.util.ArrayList.RangeCheck(ArrayList.java:547)
at java.util.ArrayList.get(ArrayList.java:322)
at demo.test2.main(test2.java:23)
你是这么写的么?
System.out.println("a.size()="+a.size());
System.out.println("a.get(0)="+a.get(0));
控制台结果: a.size()=0
Exception in thread "main" java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
at java.util.ArrayList.RangeCheck(ArrayList.java:547)
at java.util.ArrayList.get(ArrayList.java:322)
at demo.test2.main(test2.java:23)
你是这么写的么?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我觉得最好是在往list里面add的时候判断,null的话就不要add了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
取出来equals对比下
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
没看明白?这什么意思
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询