Java实现数组反转翻转的方法实例

时间:2021-08-17 03:32:56

数组翻转的方法(java实现),数组翻转,就是将数组倒置,例如原数组为:{"a","b","c","d"},那么翻转后的数组为{"d","c","b","a"}。

【方法一】使用集合个工具类: Collections.reverse(ArrayList) 将数组进行反转:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
import java.util.ArrayList;import java.util.Collections;
public class Main {
  public static void main(String[] args) {
   ArrayList arrayList = new ArrayList();
   arrayList.add("A");
   arrayList.add("B");
   arrayList.add("C");
   arrayList.add("D");
   arrayList.add("E");
   System.out.println("反转前排序: " + arrayList);
   Collections.reverse(arrayList);
   System.out.println("反转后排序: " + arrayList);
  }
}

以上代码运行输出结果为:

反转前排序: [A, B, C, D, E]  
反转后排序: [E, D, C, B, A]   

【方法二】使用集合ArrayList实现反转:

【方法三】直接使用数组实现反转,即,反转后数组的第一个元素等于源数组的最后一个元素:

方法二和方法三的实现代码如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
package javatest2;
 
import java.util.ArrayList;
 
public class JavaTest2 {
 
  public static void main(String[] args) {
    String[] Array = { "a", "b", "c", "d", "e" };
    reverseArray1(Array);// 使用集合ArrayList实现反转
    for (int j = 0; j < Array.length; j++) {
      System.out.print(Array[j] + " ");
    }
 
    System.out.print("\n");
    String[] temp = reverseArray2(Array);// 直接使用数组实现反转
    for (int j = 0; j < temp.length; j++) {
      System.out.print(Array[j] + " ");
    }
 
  }
 
  /*
   * 函数:reverseArray1和reverseArray2
   * 功能:实现 数组翻转
   * 例如:{'a','b','c','d'}变成{'d','c','b','a'}
   */
  private static void reverseArray1(String[] Array) {
    ArrayList<String> array_list = new ArrayList<String>();
    for (int i = 0; i < Array.length; i++) {
      array_list.add(Array[Array.length - i - 1]);
    }
    Array = array_list.toArray(Array);
  }
 
  private static String[] reverseArray2(String[] Array) {
    String[] new_array = new String[Array.length];
    for (int i = 0; i < Array.length; i++) {
      // 反转后数组的第一个元素等于源数组的最后一个元素:
      new_array[i] = Array[Array.length - i - 1];
    }
    return new_array;
  }
 
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:http://blog.csdn.net/guyuealian/article/details/51113133