我有以下变量
double x = 0.03D;
将其传递给构造函数
之后private double rememberVar;
public constructor(double x) {
this.rememberVar = x*2;
}
我想在另一个函数中使用它(在同一个类中),它将double作为参数。
this.setAttribute(maxHealthAttr).setValue(this.rememberVar);
我遇到的问题如下:rememberVar不会用作0.06D,而是用作0.06
这是我第一次真正使用这种变量,我不知道如何操作它,或者我是否真的正确地选择了双重类型。
答案 0 :(得分:1)
后缀D
只表示您为变量x
指定的数字是double
。这不应该是必要的,因为x
已经是double
类型。
Franky,我从不使用后缀D
来对double
进行类型转换,因为在您的情况下,0.03
已经是类型double
而不是类型{{1} }}。如果您明确需要float
,请使用float
。
您的0.03f
没有rememberVar
后缀,因为该后缀实际上并不是数字的一部分,它只是用于类型转换。
答案 1 :(得分:0)
我认为您的实施中没有任何问题或问题。 D用作后缀,表示变量操作应遵循双数据类型的规则。
在您的情况下,0.06是0.06D,因为数据类型是double类型。
如果您希望变量遵循其他一些数据类型规则,您可以添加后缀或将其转换为其他数据类型(float,int等)