使用双返回值和参数在Java中编写算法方法的问题

Que*_*fat 1 java

几年前我为C++编写了一个方法,现在我正在尝试将它用于Java.我认为这就像编辑方法的第一行一样简单,但我错了.

代码如下.更新:

import static java.lang.Math.*;

public static double getJD(double y,double m,double d){
    if (m<=2.0){
        y-=1.0;
        m+=12.0;
    }
    double a=floor(y/100.0);
    return (365.25*(y+4716.0))+(30.6001*(m+1))+d+(2.0-a+floor(a/4.0))-1524.5;
}
Run Code Online (Sandbox Code Playgroud)

编辑:Eclipse仍在使用下面列出的编译器错误吓坏了.

说明资源路径位置类型令牌" - "上的语法错误,删除此令牌jd.java /已用时间calc/src第7行令牌";"上的Java问题语法错误,?预期jd.java /经过时间calc/src第3行Java问题语法错误令牌")",预期在此令牌jd.java /经过时间calc/src第2行Java问题语法错误令牌"double",{预期jd.java /经过时间calc/src第1行Java问题语法错误令牌"double",@ expect jd.java/Elapsed time calc/src第1行Java问题语法错误令牌"double",删除此令牌jd.java /经过时间calc/src第1行Java问题语法错误令牌"double",无效(jd.

Pat*_*han 5

除非您对java.lang.Math进行静态导入,否则需要将"floor"替换为"Math.floor".

静态导入允许您在不限定其名称的情况下引用另一个类的静态成员:

import static java.lang.Math.*;