**1:思路分析**
1:静态初始化一个数组
2:把0索引和arr.lentgh-1的数据交换
3:把1索引和arr.lentgh-2的数据交换
4:只要做到arr.length/2就可以了
5:返回值是void,因为这两个数组其实就是一个数组
package day05;
/**
* java基础:数组
* Author:yangjishun
* Description:数组的遍历并将其逆序
* Date: 2017-10-22 22:12
*/
public class ArrayDemo8 {
public static void main(String[] args) {
//定义一个静态数组
int[] arr = new int[]{1, 2, 3, 4, 5, 6, 7, 8, 9};
//调用方法
// Reverse1(arr);
System.out.println("实现方法一");
// printlnArr(arr);
Reverse2(arr);
System.out.println("实现方法二");
printlnArr(arr);
}
/**
* @Author(作者):yangjishun
* @Description(描述):数组逆序
* @Params:[arr]
* Returned Value:void
* @Date:2017-10-23 0:05
*/
public static void Reverse1(int[] arr) {
//数组元素的第一次调用
// int temp=arr[0];
// arr[0]=arr[arr.length-1]; //第一个元素等最后一个元素
// arr[arr.length-1]=temp; //最后一个元素的值就是第一个元素的值
//对数组进行遍历
for (int x = 0; x < arr.length / 2; x++) {
int temp = arr[x]; //定义一个临时的元素值
//每遍历一次,就是arr[0]=arr[arr.length-1-0]
//arr[1]=arr[arr.length-1-1]
arr[x] = arr[arr.length - 1 - x];
arr[arr.length - 1 - x] = temp;
}
}
/**
*@Author(作者):yangjishun
*@Description(描述):数组元素逆序
*@Params:[arr]
*Returned Value:void
*@Date:2017-10-23 0:13
*/
public static void Reverse2(int[] arr) {
//利用两个索引,开始和结尾,开始从0开始,结尾从arr.length-1
for (int start = 0, end = arr.length - 1; start <= end; start++,end--) {
int temp = arr[start];
arr[start] = arr[end];
arr[end] = temp;
}
}
/**
*@Author(作者):yangjishun
*@Description(描述):
*@Params:[arr]
*Returned Value:void
*@Date:2017-10-23 0:14
*/
//写一个打印输出的方法,用来打印数组
public static void printlnArr(int[] arr) {
System.out.print("[ "); //打印数组的左中括号
for (int x = 0; x < arr.length; x++) {
//进行判断,如果是数组中的最后一个元素,打印最后一个元素和}
if (x == arr.length - 1) {
System.out.print(arr[x] + "]");
} else {
//如果不是最后的一个元素
System.out.print(arr[x] + ",");
}
}
System.out.println();
}
}