2012-08-27 271 views
0

我使用Java中的Map我得到空指针异常,当我用这个 if(!GenericValidator.isBlankOrNull(itemsImagesMap.get(item.getuserId()).toString()))为什么我在Java中使用map时会出现空指针异常?

地图没有包含这个用户标识符,但我已经检查!GenericValidator.isBlankOrNull但后来也我得到空指针异常..

+0

什么是MAP?你的意思是java.util.Map?然后,如果你没有进一步的解释嵌套多种方法调用,我们很难说出发生了什么,以及哪一个可能会导致你的NPE。 –

回答

2

要么itemnull,你得到的异常,因为你nullitemsImagesMap.get(item.getuserId())回报nullgetuserId和你打电话toStringnull

+0

我该如何检查? – coderman

+0

只需检查'if(item == null)'或'if(item.getUserId()== null)'来验证 – Cratylus

2

您应该在代码中进行一些检查。喜欢的东西:

if (item != null && item.getuserId() != null && itemsImagesMap.get(item.getuserId()) != null) { 
    // do the rest of the logic here 
} 
0

你建议立即进行删除-really-避免手臂长的线路;)

将它分成多个行,它会更容易调试。

(对不起,这不回答问题,但是这样做并发布结果)。

您是否在地图中放置了与item.getuserId()键相对应的东西?

相关问题