数组元素反转代码实现
import java.util.Scanner; /* * 需求: * (1)键盘录入5个int类型的数据存储数组arr中 * (2)定义方法将arr数组中的内容反转 * (3)定义方法对反转后的数组进行遍历 * 分析: * A:定义一个长度为5的数组 * B:通过键盘录入数据给数组中的元素赋值 * C:定义方法将arr数组中的内容反转 * 什么是反转? 如何实现反转 * D:定义方法对反转后的数组进行遍历 * * * */ public class Test7 { public static void main(String[] args) { //定义1个5个数据的数组 int[] arr=new int[5]; //键盘录入数据 Scanner sc=new Scanner(System.in); for(int x=0;x<arr.length;x++) { System.out.println("请输入"+(x+1)+"个元素值:"); int num=sc.nextInt(); arr[x]=num; } //反转前 printArray(arr); reverse(arr); //写方法进行数组遍历 printArray(arr); } //遍历数组 public static void printArray(int[] arr) { System.out.print("["); for(int x=0;x<arr.length;x++) { //如果数组的索引是最后一个 if(x==arr.length-1) { System.out.println(arr[x]+"]"); }else { System.out.print(arr[x]+","); } } } //写方法 将数组中的内容反转 明确参数列表int[] arr 明确返回值 无返回值void public static void reverse(int[] arr) { //拿数组0索引位置的元素和最大索引位置的元素交换 //拿数组1索引位置的元素和次大索引位置的元素交换 //int start=0; //int end=arr.length-1; //start<=end; //如何实现2个数据的交换呢 // int a=10; // int b=20; // 采用第三方变量的方式 实现2个数据的交换 // int temp=a; // b=a; //b=temp; for(int start=0,end=arr.length-1;start<=end;start++,end--) { //采用第三方变量的方式 把数组中的内容反转 int temp=arr[start]; arr[start]=arr[end]; arr[end]=temp; } } }