所谓遍历(Traversal),是指沿着某条搜索路线,依次对树(或图)中每个节点均做一次访问。(来源百度百科)
此处的树和图是数据结构中的概念,大家可以大概先有这个印象就好。
简单说,遍历就是按照某种特定的方式将一个组合里的每个元素有且仅有的访问一次。
数组遍历:将数组中的元素按照指定顺序访问一次,比如从第一个到最后一个,从最后一个到第一个。
要实现数组的遍历,需要用到数组的下标,因为下标是连续的,就可以与循环搭配起来使用。
public static void main(String[] args) { int[] arr = new int[] {10,20,25,23,45,56,67,78,65}; for(int i = 0;i<9;i++) { System.out.println(arr[i]);//遍历输出每个数组元素 } }
以上例子,定义一个包含9个元素的整型数组arr,利用for与下标i搭配实现数组从第一个元素到最后一个元素的遍历输出,当然如果你需要,也可以对其进行其他操作,比如,赋值
public static void main(String[] args) { int[] arr = new int[] {10,20,25,23,45,56,67,78,65}; for(int i = 0;i<9;i++) { arr[i] = arr[i]*2;//每个数组元素*2 System.out.println(arr[i]); } }
以上代码实现了将数组内的每个元素*2后存入原数组的赋值操作和输出操作,当然,还可以针对数组元素求和
public static void main(String[] args) { int[] arr = new int[] {10,20,25,23,45,56,67,78,65}; int sum = 0; for(int i = 0;i<9;i++) { sum = sum + arr[i];//数组元素求和 System.out.println(arr[i]); } }
当然,如果需要,您也可以从最后一个元素往第一个元素遍历,比如
public static void main(String[] args) { int[] arr = new int[] {10,20,25,23,45,56,67,78,65}; for(int i = 8;i>=0;i--) { System.out.println(arr[i]); } }
在上述案例中,循环初值是最后一个元素的下标8,循环条件是i>=0,0是最后一个满足循环条件的元素,从8—》0,逐个递减。
在Java中,为了可以自动的获取数组的元素个数,可以利用 数组名.length
public static void main(String[] args) { int[] arr = new int[] {10,20,25,23,45,56,67,78,65}; for(int i = 0;i<arr.length;i++) { System.out.println(arr[i]);//遍历输出每个数组元素 } }
如上,将数组的长度9改成arr.length效果一样,甚至更方便,尤其往后学习了方法的定义。
练一练: 学习了这么多,可以拿出来练一练了,如,定义一个有10个元素的整型数组,求他们的和,平均值,最小值,最大值。