Java數組的根本操作辦法整頓。本站提示廣大學習愛好者:(Java數組的根本操作辦法整頓)文章只能為提供參考,不一定能成為您想要的結果。以下是Java數組的根本操作辦法整頓正文
數組是具有雷同數據類型的一組數據的聚集,Java支撐多為數組,一維數組的每一個根本單位都是根本數據類型的數據,二維數組就是每一個根本單位是一維數組的一維數組,以此類推,n維數組的每一個根本單位都是n-1為數組的n-1維數組。上面以一維數組為例解釋Java數組的用法。
1、數組聲明
數組聲明有以下兩種情勢(方括號的地位分歧):
int arr[]; int[] arr2;
2、數組初始化
數組初始化也有兩種情勢,以下(應用new或不應用new):
int arr[] = new int[]{1, 3, 5, 7, 9}; int[] arr2 = {2, 4, 6, 8, 10};
3、遍歷數組
遍歷數組可用for/foreach,以下:
public static void main(String[] args) { int arr[] = new int[]{1, 3, 5, 7 ,9}; int[] arr2 = {2, 4, 6, 8, 10}; for (int i = 0; i < arr.length; ++i) { System.out.print(arr[i] + "\t"); // 1 3 5 7 9 } for (int x: arr2) { System.out.print(x + "\t"); // 2 4 6 8 10 } }
4、Arrays.fill()填湊數組
應用Arrays類的靜態辦法,須要import包java.util.Arrays,界說了很多重載辦法。
void fill(int[] a, int val)全體填充 void fill(int[] a, int fromIndex, int toIndex, int val)填充指定索引的元素 int[] arr3 = new int[5]; for (int x: arr3) { System.out.print(x + "\t"); // 0 0 0 0 0 全體初始化為0 } System.out.println(); Arrays.fill(arr3, 10); for (int x: arr3) { System.out.print(x + "\t"); // 10 10 10 10 10 全體填充為10 } System.out.println(); Arrays.fill(arr3, 1, 3, 8); for (int x: arr3) { System.out.print(x + "\t"); // 10 8 8 10 10 填充指定索引 } System.out.println();
5、Arrays.sort()對數組排序
void sort(int[] a)全體排序 void sort(int[] a, int fromIndex, int toIndex)排序指定索引的元素 int[] arr4 = {3, 7, 2, 1, 9}; Arrays.sort(arr4); for (int x: arr4) { System.out.print(x + "\t"); // 1 2 3 7 9 } System.out.println(); int[] arr5 = {3, 7, 2, 1, 9}; Arrays.sort(arr5, 1, 3); for (int x: arr5) { System.out.print(x + "\t"); // 3 2 7 1 9 } System.out.println();
6、Arrays.copyOf()復制數組
int[] copyOf(int[] original, int newLength)復制數組,指定新數組長度 int[] copyOfRange(int[] original, int from, int to)復制數組,指定所復制的原數組的索引 int[] arr6 = {1, 2, 3, 4, 5}; int[] arr7 = Arrays.copyOf(arr6, 5); // 1 2 3 4 5 int[] arr8 = Arrays.copyOfRange(arr6, 1, 3); // 2 3 for (int x: arr7) { System.out.print(x + "\t"); } System.out.println(); for (int x: arr8) { System.out.print(x + "\t"); } System.out.println();
7、檢討數組中能否包括某一個值
String[] stringArray = { "a", "b", "c", "d", "e" }; boolean b = Arrays.asList(stringArray).contains("a"); System.out.println(b); // true
先應用Arrays.asList()將Array轉換成List<String>,如許便可以用靜態鏈表的contains函數來斷定元素能否包括在鏈表中。
8、銜接兩個數組
int[] intArray = { 1, 2, 3, 4, 5 }; int[] intArray2 = { 6, 7, 8, 9, 10 }; // Apache Commons Lang library int[] combinedIntArray = ArrayUtils.addAll(intArray, intArray2);
ArrayUtils是Apache供給的數組處置類庫,其addAll辦法可以很便利地將兩個數組銜接成一個數組。
9、數組翻轉
int[] intArray = { 1, 2, 3, 4, 5 }; ArrayUtils.reverse(intArray); System.out.println(Arrays.toString(intArray)); //[5, 4, 3, 2, 1]
仍然用到了全能的ArrayUtils。
10、從數組中移除一個元素
int[] intArray = { 1, 2, 3, 4, 5 }; int[] removed = ArrayUtils.removeElement(intArray, 3);//create a new array System.out.println(Arrays.toString(removed));