gpt4 book ai didi

Java Double 初始化为 0.0

转载 作者:行者123 更新时间:2023-12-02 13:15:28 28 4
gpt4 key购买 nike

我有一个 bean,其中有一个双倍字段“CustAmount”,我尝试测试该 bean,但我似乎不明白这一点:当我在本地计算机上运行时,实例化时它会初始化为 0.0。当我在 Linux 测试环境中运行相同的代码时,它仍然为空。由于检索到的数据存在差异,这意味着如果我将 CustAmount 作为 null 发送到后端,我会得到一些数据,但如果我将 CustAmount 作为 0.0 发送,则查询将在 0.0 的基础上完成,并且不会向我发送任何信息。

如果代码相同,这怎么可能,当我在 java 1.5 中编译 new MyBean() 时,有可能 double 保持为 null,而在 1.6 中它会被初始化为 0.0。

我不知道这是否会在两个 Java 版本中发生,但这是我这边唯一的区别。

感谢您的任何提示。

添加代码片段:

public class MyBean {

private double custAmount;

public void setCustAmount(double custAmount) {
this.custAmount = custAmount;
}
public double getCustAmount() {
return custAmount;
}

}

我就是这样做

MyBean mybean =  new MyBean();

它不是一个 Double,而是一个 double。赛义德..

最佳答案

Java double 字段将默认初始化为 0.0。 Java Double 字段将默认初始化为 null。无论您使用什么版本的 Java,也无论您在什么环境中运行它,这两个事实都是正确的。

<小时/>

如果您在不同的环境中看到不同的行为,那么最可能的解释是您在各自的环境中执行不同的代码(或以不同的方式调用相同的代码)。发布一些显示该问题的代码可能指出其他一些问题,但我对此表示怀疑。

<小时/>

根据您发布的代码,custAmount 不可能为 null。如果您看到 null,则您必须使用该代码的不同版本,或者 null 必须来自其他来源。

关于Java Double 初始化为 0.0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9769110/

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