樣例數組:int[] a = new int[] {22,11,21,54,87,90};
1,Arrays.asList()的坑
List<String> list = Arrays.asList("a","b","c");
list它的長度是不能改變的。當你向這個List添加或刪除一個元素時(例如 list.add("d");)程序就會拋出異常(java.lang.UnsupportedOperationException)
因爲這裏的這個ArrayList不是java.util包下的
而是java.util.Arrays.ArrayList,顯然它是Arrays類自己定義的一個內部類!這個內部類沒有實現add()、remove()方法,而是直接使用它的父類AbstractList的相應方法。而AbstractList中的add()和remove()是直接拋出java.lang.UnsupportedOperationException異常的!
總結一下吧,如果你的List只是用來遍歷,就用Arrays.asList()吧!如果你的List還要添加或刪除元素,還是乖乖地new一個java.util.ArrayList,然後一個一個的添加元素吧!
2,Arrays的數組轉字符串,複製數組
int[] a = new int[] {22,11,21,54,87,90};
int[] b = Arrays.copyOf(a, 3);
System.out.println(Arrays.toString(a));
System.out.println(Arrays.toString(b));
結果: [22, 11, 21, 54, 87, 90]
[22, 11, 21]
3,數組比較相等:Boolean n = Arrays.equals(a, b);
4,數組替換:Arrays.fill(a, 22); 結果:[22, 22, 22, 22, 22, 22]
5,查找數組某一個元素的下標位置:int m = Arrays.binarySearch(b, 21);