Java如何使用增强for循环打印已填充的斐波那契Fib数组
Java 斐波那契数组增强for循环打印实现方案
现有代码问题说明
- 计算逻辑只操作固定下标
Fib[2],没有按顺序给数组后续位置赋值,除前3位外其余元素都是默认初始值0 - 增强for循环嵌套在计算循环内部,不符合「先全量填充数组、再统一打印」的需求
修正后实现代码
public static void main(String[] args) { int[] Fib = new int[20]; // 初始化斐波那契前两项 Fib[0] = 0; Fib[1] = 1; // 第一步:先完成全量数组填充 for (int i = 2; i < Fib.length; i++) { Fib[i] = Fib[i-1] + Fib[i-2]; } // 第二步:用增强for循环统一打印所有元素 for (int num : Fib) { System.out.print(num + " "); } }
逻辑说明
- 数组初始化后先通过普通for循环完成全量填充:从下标2开始,每一位的值等于前两位之和,直接赋值给当前下标对应的数组位置即可,不需要修改已经完成赋值的历史元素
- 数组全部填充完成后,单独调用增强for循环遍历数组:增强for会自动迭代数组的每一个元素,直接输出迭代到的元素值即可
内容的提问来源于stack exchange,提问作者king
相关产品推荐
相关产品推荐

