gpt4 book ai didi

java - JAVA中的 boolean 对象和 boolean 变量问题

转载 作者:IT老高 更新时间:2023-10-28 20:44:02 26 4
gpt4 key购买 nike

我声明了一个 boolean 变量。例如 Boolean dataVal=null;
现在,如果我执行以下代码段:

if(dataVal)
System.out.println("\n\NULL value in dataVal: "+dataVal);
else
System.out.println("\n\nvalue in dataVal: "+dataVal);

我得到 NullPointerException。好吧,我知道这很明显,但我需要知道这背后的原因。

最佳答案

当您评估 Boolean 对象的 boolean 值时,Java 取消装箱该值(自动装箱功能,从 1.5 开始)。所以真正的代码是:dataVal.booleanValue()。然后它抛出 NullPointerException。对于任何装箱值,取消装箱空对象都会引发此异常。

在 1.5 之前,您必须手动将值拆箱:if (dataVal.booleanValue()) 所以它更明显(也更冗长:)

关于java - JAVA中的 boolean 对象和 boolean 变量问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9479806/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com