数组翻转的方法(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 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