有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

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

我创建了一个像这样的JavaBean类

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);
}

如何检查该值是否为空?我的意思是,如果没有设置,我应该打印其他内容(比如null

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

谢谢


共 (2) 个答案

  1. # 1 楼答案

    听起来你应该使用Double(类)而不是double(原语)。没有类型为doublenull值:

    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);
        }
    }
    

    请注意,如果您想防止setter在设置一次后再次变成^{,可以让setter使用double而不是Double

  2. # 2 楼答案

    使用Double而不是Double,这将完全满足您的需求