package top.dj.test;
import java.math.BigInteger;
import java.util.stream.LongStream;
import java.util.stream.Stream;
/**
* @Author DengJia
* @Date 2021/7/30 10:19
* @Description 斐波拉契数列
*/
public class FibonacciSequence {
static long a = 0, b = 1;
static BigInteger preInt = new BigInteger("0");
static BigInteger nextInt = new BigInteger("1");
public static void main(String[] args) {
/* Integer,Long 数据类型长度有限,会溢出 */
fibonacciLongStream();
/* BigInteger 使用麻烦一点,但不会有溢出问题 */
fibonacciBigInteger();
}
public static void fibonacciLongStream() {
LongStream.generate(() -> {
long tmp = a;
a = b;
b += tmp;
return a;
}).limit(100).forEach(System.out::println);
}
public static void fibonacciBigInteger() {
Stream.generate(() -> {
BigInteger tmp = preInt;
preInt = nextInt;
nextInt = nextInt.add(tmp);
return preInt;
}).limit(200).forEach(System.out::println);
}
}
斐波拉契数列(Lambda表达式)
转载
一个输出斐波拉契数列(Fibonacci)的LongStream
DJOSIMON
本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
Java 斐波拉契数列
java
java -
07、斐波拉契数列
题目描述: 写一个函数,输入n,求斐波那契(Fibonacci)数列的第n项。斐波那契数列的定义如下: class Solution {public:
斐波拉契数列 剑指offer ci 斐波那契数列 斐波那契 -
斐波拉契数列IV【矩阵乘法】
题目大意:题目链接:http://10.15...
i++ #include #define 初始化