任何人都可以解释为什么此代码导致下面的输出吗?布尔引用为空
@Test
public void testBooleanArray() {
Boolean[] ab = new Boolean[]{a, b};
a = new Boolean(true);
b = new Boolean(false);
for(Boolean x : ab) {
System.out.println(x);
}
}
结果:
null
null
应该AB不保持指针数组对象a和对象b,因此输出:
true
false
现在的技巧问题是,如何在没有Java抱怨它们不存在的情况下分配变量:p。 P.S:注意@Test注释。 –
为了简洁起见,我放弃了声明 - 没有什么有趣的在那里看到! – StuPointerException
啊惭愧。我认为测试环境引起了一些“魔力”。显然不是这种情况,但看到陌生人的东西:) –