Java:基于浮点的参数不';我认不出浮点数

Java:基于浮点的参数不';我认不出浮点数,java,floating-point,double,Java,Floating Point,Double,我的问题是我确实有一个函数,它接受浮点数示例1.0、2.0等。现在调用该函数并传递类似2.0的参数->它会给出以下错误:类型Student中的方法notenAdd(float)不适用于参数(double) 功能: public void notenAdd(float k) { if (k>=1.0 & k<=5.0) { noten.add(k); } } example.notenAdd(2.0); 问题是什么 只要这样做: exampl

我的问题是我确实有一个函数,它接受浮点数示例1.0、2.0等。现在调用该函数并传递类似2.0的参数->它会给出以下错误:
类型Student中的方法notenAdd(float)不适用于参数(double)

功能:

public void notenAdd(float k) {
    if (k>=1.0 & k<=5.0) {
        noten.add(k);
    }
}
example.notenAdd(2.0);
问题是什么

只要这样做:

example.notenAdd(2.0f)


由于简单发送值2.0在默认情况下被视为浮点数的双精度类型。

2.0是双精度值,使用2.0表示
(float)2.0
2f
或只是
2
。除了使参数成为浮点而不是双精度的策略之外,是否有充分的理由使用float?比双倍更好的情况很少出现。