数组反转JAVA

时间:2025-04-04 13:35:40

反转数组——Java语言的实现方法

方法一: 前后次序颠倒

public class Array{
		public static void main(String[] args){
			  int[] arr={1,2,5,7,3};        //静态初始化一组数组
			  for (int k=0;k<arr.length/2;k++){
            int w=arr[k];				 	//借助第三个变量暂存数组元素
            arr[k]=arr[arr.length-1-k];// k与-1-k对应的数组元素调换
            arr[arr.length-1-k]=w;
        }
       for (int k = 0; k < 5; k++) {
           System.out.print(arr[k]+"  ");
        }
   }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

方法二:两边夹(自己给的称呼)——趋中逼近

public class Array{
	public static void main(String[] args){
		int[] arr={1,2,3,4,5};//静态初始化
		for(int m=0,n=4;m<n;m++,n--){     //n=-1;
            int t=arr[m];
            arr[m]=arr[n];
            arr[n]=t;
        }

        for (int k = 0; k < 5; k++) {
            System.out.print(arr[k]+" ");
        }
  }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

方法三:创建空数组

public class Array{
	public static void main(String[] args){
			int[] arr={1,2,3,4,5};
			int[] A = new int[arr.length]; //创建一个与arr等大的空数组A,以备用
        
        for (int i=0;i<arr.length;i++){	//将arr的元素反转后整体赋给数组A
            A[i] = arr[arr.length-i-1];
        }
        
        for (int i=0;i<A.length;i++){	//目的是对原数组进行反转。再把反转后的数组A赋给原数组arr进行输出
            arr[i] = A[i];
            System.out.print(arr[i]+" ");
        }
	}
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15