Java如何倒序输出数组?求for循环实现逻辑详解
Java for循环倒序打印数组逻辑详解
Java里数组的索引是从0开始计数的,拿你给的示例数组{1,2,3,4,5}来说:
- 索引0 → 元素1
- 索引1 → 元素2
- 索引2 → 元素3
- 索引3 → 元素4
- 索引4 → 元素5
数组的长度是5,所以最后一个元素的索引是数组长度 - 1(也就是5-1=4)。
倒序循环的核心逻辑
倒序打印的关键是从最后一个元素的索引开始遍历,每次往前挪一个索引,直到遍历到第一个元素的索引(0)为止。
代码示例
public class ReverseArrayPrint { public static void main(String[] args) { int[] arr = {1,2,3,4,5}; // 倒序for循环 for (int i = arr.length - 1; i >= 0; i--) { System.out.print(arr[i] + " "); } } }
逐行拆解执行流程
我们把for循环拆成3个核心部分,对应循环的三个表达式:
初始化表达式:
int i = arr.length - 1- 一开始给循环变量
i赋值为4(因为arr.length是5,5-1=4),也就是数组最后一个元素的索引。
- 一开始给循环变量
条件判断表达式:
i >= 0- 每次循环开始前都会检查这个条件,只要
i大于等于0,就继续循环;如果i变成-1,就停止循环。
- 每次循环开始前都会检查这个条件,只要
更新表达式:
i--- 每次循环执行完打印代码后,把
i的值减1,也就是往前挪一个索引。
- 每次循环执行完打印代码后,把
跟着示例数组走一遍完整流程:
- 第一次循环:i=4 → 条件
4>=0成立 → 打印arr[4](即5) → 执行i--,i变成3 - 第二次循环:i=3 → 条件
3>=0成立 → 打印arr[3](即4) → 执行i--,i变成2 - 第三次循环:i=2 → 条件
2>=0成立 → 打印arr[2](即3) → 执行i--,i变成1 - 第四次循环:i=1 → 条件
1>=0成立 → 打印arr[1](即2) → 执行i--,i变成0 - 第五次循环:i=0 → 条件
0>=0成立 → 打印arr[0](即1) → 执行i--,i变成-1 - 第六次检查条件:i=-1 →
-1>=0不成立 → 循环结束
最终输出就是5 4 3 2 1,完全符合需求。
内容的提问来源于stack exchange,提问作者Al-amin Rabiu
相关产品推荐
相关产品推荐

