我有以下代码:
Boolean bool = null;
try
{
if (bool)
{
//DoSomething
}
}
catch (Exception e)
{
System.out.println(e.getMessage());
}
Run Code Online (Sandbox Code Playgroud)
为什么我检查布尔变量"bool"会导致异常?当它"看到"它不是真的时,它不应该跳过if语句吗? 当我删除if语句或检查它是否为null时,异常消失.
可能重复:
java中允许的Integer == int
以下两个陈述之间有什么区别
Long l1 = 2L;
if(l1 == 2)
System.out.println("EQUAL");
if(l1.longValue() == 2)
System.out.println("EQUAL");
Run Code Online (Sandbox Code Playgroud)
他们两个都给出了相同的结果"EQUAL".但我怀疑龙是对象.它是如何平等的?
即使使用相同的名称(即var)声明,我也无法确切了解JavaScript中原始数据类型与非原始数据类型之间的区别。