Code Bye

List怎么判断非空?

 

if(list.equals("null")||list.size()<1||list==null){
				appId="SB"+nowtime+"01";
			}


怎么总是不进来?

list 值为 [null]


1分
if(list == null || list.size() ==0 ){//你的操作
}
这个不是空,有值啊
list.isEmpty()判断
list并不能判断为null,list指的是一个内存地址空间,在这个空间里面存放了键值。
引用 2 楼  的回复:

这个不是空,有值啊

是有之,为[null]  可是怎么判断呢?


1分
关于List空的判断,1楼是对的。

但是,从你给出的信息来看,并不是List本身为空,你的List有1个元素。但这个元素是null。

这种情况如果要判断的话,就比较繁琐了,相当于是 list.get(0) == null

或者要写循环来实现:
for (int i=0;i<list.size();i++){
  if (list.get(i) == null) {……}
}


1分
list==null||list.size()==0

第一个条件判断对象是否存在,如果不存在,条件成立,则短路或情况下,第二个条件不执行,不会引发空指针
如果存在,条件不成立,则检查该集合中有没有值,如果没有值,则条件成立

LZ不是讲了吗 list 值为 [null] 
null还怎么点出方法来?首先判断它是否为null:

if(list==null||list.equals(“null”)||list.size()<1){

不然会报错的哦。

引用 6 楼  的回复:

关于List空的判断,1楼是对的。

但是,从你给出的信息来看,并不是List本身为空,你的List有1个元素。但这个元素是null。

这种情况如果要判断的话,就比较繁琐了,相当于是 list.get(0) == null

或者要写循环来实现:
for (int i=0;i<list.size();i++){
  if (list.get(i) == null) {…..……

不能调用get方法,会报空指针的!、、

怎么判断啊。有值[null]


1分
import java.util.List;
import java.util.ArrayList;

public class Test {
public static void main(String sts[]) {
List<String> list = new ArrayList<String>();
list.add(“”);
list.add(null);
if (null != list && 0 != list.size()) {
int length = list.size();
for (int i = 0; i < length; i++) {
if (null == list.get(i)) {
System.out.println(list.get(i));
}
}
}
}
}

那.size()打印出来是多少?
引用 11 楼  的回复:

那.size()打印出来是多少?

size=1

楼主,你到底要判断什么东西?是要非空时才 appId=”SB”+nowtime+”01″;,还是不空时 appId=”SB”+nowtime+”01″;???
你都size==1了 怎么满足条件进入?

1分
我顶你个肺啊。
引用 13 楼  的回复:

楼主,你到底要判断什么东西?是要非空时才 appId=”SB”+nowtime+”01″;,还是不空时 appId=”SB”+nowtime+”01″;???
你都size==1了 怎么满足条件进入?


if(list==null||null==list.get(0)||list.size()<1){
				appId="SB"+nowtime+"01";
			}else{
				long max = Long.parseLong(list.get(0).toString().trim().substring(2));
				appId="SB"+(max+1);
			}

1分
if(list.equals(“null”)||list.size()<1||list==null){
                appId=”SB”+nowtime+”01″;
            }

如果list为null,第一个list.equals(“null”)就直接报错了,所以进不去。。
用if(list == null || list.size() == 0){},list为null就直接不执行list.size()了,所以不会错。


1分
引用 9 楼  的回复:

不能调用get方法,会报空指针的!
怎么判断啊。有值[null]

要配合起来用啊:

public boolean isEmpty(List lst) {
  if (lst == null || lst.size()==0) return true;
  for (int i=0;i<list.size();i++){
    if (list.get(i) != null) return false;
  }
  return true;
}


1分
if(list == null || list.size() ==0 ){

}

各位,解决了

就这样。


if(list==null||null==list.get(0)||list.size()<1)


多谢各位高手指教!


1分
if(list==null||list.size()==0){
                appId="SB"+nowtime+"01";
            }else{
                long max = Long.parseLong(list.get(0).toString().trim().substring(2));
                appId="SB"+(max+1);
            }

就这样没问题了  楼主试试看


1分
list.equals(“null”)。。。。。。介个

1分
引用 17 楼  的回复:

引用 9 楼  的回复:
不能调用get方法,会报空指针的!
怎么判断啊。有值[null]

要配合起来用啊:

public boolean isEmpty(List lst) {
  if (lst == null || lst.size()==0) return true;
  for (int i=0;i<list.size();i++){
    if (l……

正解……  就是这样的……  


2分
有多種方式:
1、
if(null == list || list.size() ==0 ){
}

2、使用第三方jar中的,如使用spring中的CollectionUtis.isEmpty()

if(CollectionUtis.isEmpty()){
}


1分
list.isEmpty()这个方法行不通吗?

1分
list.equals(“null”)
这谁教的……拉出去剁了

2分
引用 5 楼  的回复:

引用 2 楼  的回复:

这个不是空,有值啊

是有之,为[null]  可是怎么判断呢?

2个问题
(1)你说的是有值?list里面有一个值list.add(“null”)是这个意思?
     哪你直接取list.get(0).equals(“null”),这样就进去了啊!
(2)你没有理解对象null是和字符串“null”的意思。


1分
lz 你那list里是不是装了个数组 试试  用 
   if(list.equals(“[]”)){ }
ls 有道理

1分
 貌似list==null判断的是list集合是否为空,不是list中所装载的对象是否为空,所以只要list被初始化了,返回的肯定是false
List list = new ArrayList();
System.out.println(list==null);//返回false
list.add(null);
System.out.println(list.get(0)==null);//返回true

1分
引用楼主  的回复:

Java code

if(list.equals(“null”)||list.size()<1||list==null){
                appId=”SB”+nowtime+”01″;
            }

怎么总是不进来?

list 值为 [null]

 为null 可以用字符窜操作 /汗

我也遇到了这个问题,不过我是看的list , 我用了list.size(),    list.isEmpty(),这个两个方法,发现还是有问题提示错误空值真异常,我才发现我那个传个来的是null,所以用了list==null,为第一判断,要先判断这个list是否有没有,在判断其中的值。不知道有没有帮助···

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明List怎么判断非空?