【问题标题】:Why do we need Boolean(boolean) constructor in java? [duplicate]为什么我们需要在 java 中使用 Boolean(boolean) 构造函数? [复制]
【发布时间】:2014-06-25 16:45:24
【问题描述】:

我想知道是否有任何遗留原因或常见用例,因为我看不出这个构造函数有什么用处。

为什么要使用这个:

Boolean b = new Boolean(var);

当我们有:

Boolean b = var; // Java will auto-box into Boolean.TRUE / Boolean.FALSE

Boolean b = Boolean.valueOf(var);

文档指出很少适合使用此构造函数,除非需要一个新实例

我们什么时候需要一个新的实例?

【问题讨论】:

标签: java


【解决方案1】:

这是一个如何使用不同实例的示例:

private static Boolean NO_VALUE = new Boolean(false);

private Boolean foo = NO_VALUE;

public setFoo(Boolean foo) {  // may be TRUE, FALSE or null
    if(foo = NO_VALUE) {
        // initialization logic
    }
    this.foo = foo;
}

这可能不是最好的用例,但我认为它说明了为什么不同的实例并非完全无用。

【讨论】:

    猜你喜欢
    • 2018-01-23
    • 1970-01-01
    • 2019-12-18
    • 2022-01-06
    • 2023-03-13
    • 2011-02-04
    • 1970-01-01
    相关资源
    最近更新 更多