在map访问时遇到NullPointerException

问题抛出

在编写自己定义的update函数中,在得到一个点的邻接点以后,我们要遍历这些邻接点,找到哪些没有访问过的点,然后对这些点进行访问。
但是在运行的时候出现NullPointException.

代码片段

for (BusSegment vertex : oneHas_next) {
                if ((!has.containsKey(vertex) || has.get(vertex) == false) && bussegment_next.contains(vertex)) {
                 ......
                }
            }

解决方案

经过思考,发现原来if (has.get(vertex) == false && bussegment_next. contains(vertex))has的map中不存在的元素的时候,会发生NullPointException。所以在找某个key值的时候加上查找这个元素是否存在的判断。

if ((!has.containsKey(vertex) || has.get(vertex) == false) && bussegment_next. contains(vertex))

这样就可以正常运行了。

你可能感兴趣的:(在map访问时遇到NullPointerException)