您的位置:首页 > 编程语言 > Java开发

Java 8:不动点

2016-06-16 20:49 330 查看
Java练习:牛顿迭代法 Vs. 不动点 中,介绍了Java中求平方根、求方程的解的不动点解法 getFixedPoint(DoubleUnaryOperator duo)

在Java 8中,我们可以将不动点的逼近数字序列,非常简单地打印出来。

下面的代码打印sqrt(2.0)的不动点的逼近数字序列

public static void iterate(){
UnaryOperator<Double> f = x ->(x + 2.0/x)/2.0;
Stream<Double> infinite =Stream.iterate(1.0,f);
infinite.limit(20).forEach(System.out::println);
}输出:
1.0

1.5

1.4166666666666665

1.4142156862745097

1.4142135623746899

1.414213562373095

1.414213562373095

1.414213562373095

1.414213562373095

1.414213562373095

1.414213562373095

1.414213562373095

1.414213562373095

1.414213562373095

1.414213562373095

1.414213562373095

1.414213562373095

1.414213562373095

1.414213562373095

1.414213562373095

f = x ->(2*x + n/(x*x))/3.0;

则求立方根。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: