【发布时间】:2010-12-20 05:30:29
【问题描述】:
我有以下代码:
if(!partialHits.get(req_nr).containsKey(z) || partialHits.get(req_nr).get(z) < tmpmap.get(z)){
partialHits.get(z).put(z, tmpmap.get(z));
}
partialHits 是一个 HashMap。
如果第一个语句为真会发生什么? Java 还会检查第二个语句吗? 因为要使第一个语句为真,HashMap 不应该包含给定的键,所以如果第二条语句被选中,我会得到NullPointerException。
所以简单来说,如果我们有以下代码
if(a && b)
if(a || b)
如果a 在第一种情况下为假,而在第二种情况下a 为真,Java 是否会检查b?
【问题讨论】:
标签: java if-statement