检查double值是否为null(如果在Bean类中设置了double值)

Shi*_*abu 2 java double null

我已经创建了这样的Java bean类

class BeanDemo
{
private double value;

//getter and setter
}

class myApp
{
BeanDemo beanDemo=new BeanDemo();

int val=7;
if(val<5)
{
   beanDemo.setValue(23.456);
}

double value=beanDemo.getValue(); // Always returns 0.0 if it is not set
System.out.println(value);
}
Run Code Online (Sandbox Code Playgroud)

如何检查该值是否为空?我的意思是如果没有设置我应该打印别的东西(比如null)

我无法检查它是否0.0因为可能我也可以将值设置为0.0.

谢谢

Jon*_*eet 11

听起来你应该使用Double(类)而不是double(原始).没有null类型的值这样的东西double:

class BeanDemo {
    private Double value;

    public void setValue(Double value) {
        this.value = value;
    }

    public Double getValue() {
        return value;
    }
}

class Test {
    public static void main(String[] args) {
        BeanDemo beanDemo = new BeanDemo();
        int val=7;
        if (val < 5) {
            beanDemo.setValue(23.456);
        }
        Double value = beanDemo.getValue(); // value will be null
        System.out.println(value);
    }
}
Run Code Online (Sandbox Code Playgroud)

请注意,如果您想要在设置一次之后再次阻止它,那么您可以使用setter double而不是Doublenull.


Evg*_*eev 7

使用Double而不是double,这将完全符合您的要求