如果hashmap中的arraylist为null? [重复]

问题描述 投票:-2回答:1

这个问题在这里已有答案:

我有三个哈希映射,其中两个有多个值(arrayLists)。

Map<String, String> advise = new HashMap<String, String>();
    Map<String, ArrayList<String>> teach = new HashMap<String,ArrayList<String>>();
    Map<String, ArrayList<String>> takesCo = new HashMap<String,ArrayList<String>>();
    //ArrayList<String> courses = new ArrayList<String>; 

我想根据第一个hashmap的键重复它们(建议)数组列表包含课程名称,我想在匹配时打印。

for (String x : advise.keySet()) { 
    String y = advise.get(x);
    ArrayList<String> z1values = teach.get(y) ;
    ArrayList<String> z2values = takesCo.get(x) ;
    if (!z1values.isEmpty() && !z2values.isEmpty()){
    for (String z1:z1values){
        for (String z2:z2values){
            if (z1.equals(z2)){
                result=x+","+y+","+z1;
                system.out.println(result);
                }
            }
        }
    }
}

我得到nullPointerException符合if语句

java nullpointerexception hashmap
1个回答
2
投票

只是改变你的状况

!z1values.isEmpty() && !z2values.isEmpty()

z1values != null && z2Values != null && !z1values.isEmpty() && !z2values.isEmpty()
© www.soinside.com 2019 - 2024. All rights reserved.