Java 中的 Boolean.TRUE 和 true 有什么区别?
PS:我理解真"和真"的区别.
PS: I understand the difference between "true" and true.
我也明白 Boolean.TRUE 是原始 true 的包装器,那么我的问题是 - 为什么原始布尔值接受 Boolean.TRUE 作为值?例如,
I also understand that Boolean.TRUE is a wrapper for the primitive true, my question then is - why does the primitive boolean accept Boolean.TRUE as a value? For instance,
boolean boolVar = Boolean.TRUE;
似乎是一个有效的陈述.
seems to be a valid statement.
推荐答案
原因
boolean boolVar = Boolean.TRUE;
works 是因为 autounboxing,这是一种 Java 5 功能,它允许包装器对象在需要时自动转换为其原始等效对象.相反的,自动装箱,也是可能的:
works is because of autounboxing, a Java 5 feature that allows a wrapper object to be converted to its primitive equivalent automatically when needed. The opposite, autoboxing, is also possible:
Boolean boolVar = true;
相关文章