Java中的積分和求導是數學計算中重要的概念,在數學中,積分和求導是彼此對稱的操作,積分是求導的逆操作,求導是積分的逆操作,Java也可以通過相關函數或者庫來進行積分和求導。
/** * 積分函數 * @param f 被積函數 * @param a 下限 * @param b 上限 * @param n 等分數量,越大精度越高 */ public static double integrate(Functionf, double a, double b, int n) { double sum = 0; double h = (b - a) / n; for (int i = 0; i< n; i++) { double x = a + i * h; sum += f.apply(x + h/2) * h; } return sum; } /** * 求導函數 * @param f 函數 * @param x 求導點 * @param dx x的增量,越小精度越高 */ public static double derivative(Function f, double x, double dx) { return (f.apply(x+dx) - f.apply(x))/dx; }
上述代碼中,integrate用于計算函數在給定范圍內的積分,f是函數,a、b分別是積分下限和上限,n是等分數量。而derivative用于計算函數在給定點的導數,f是函數,x是求導點,dx是增量。