您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關Java如何使用Arrays工具類,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
Arrays 是 JDK 提供的操作數組的工具類,Arrays 類提供了動態創建、訪問和操作 Java 數組的方法。
此類還包含一個允許將數組作為列表來查看的靜態工廠。
public static String toString(T [] a)
如:
int[] a = {2,8,51,13,46,11,22}; System.out.println(Arrays.toString(a));
public static <T> List<T> asList(T... a)
例:
List<Integer> list = Arrays.asList(1, 2, 3, 4, 5); System.out.println(list);
1)該方法適用于對象型數據的數組(String、Integer…),該方法不要使用于基本數據類型的數組(byte,short,int,long,float,double,boolean);
2)該方法將數組與List列表鏈接起來:當更新其一個時,另一個自動更新;
3)不支持add()、remove()、clear()等方法;
4)用此方法得到的List的長度是不可改變的;
5)如果你的List只是用來遍歷,就用Arrays.asList();如果你的List還要添加或刪除元素, 就new一個java.util.ArrayList,然后一個一個地添加或刪除元素;
6)這個ArrayList不是java.util包下的,而是java.util.Arrays.ArrayList。它是Arrays類自己定義的一個靜態內部類,這個內部類沒有實現add()、remove()方法,而是直接使用它的父類AbstractList的相應方法。
public static IntStream stream(int[] array)
例:
int[] a = {2,8,51,13,46,11,22}; IntStream stream = Arrays.stream(a); System.out.println(Arrays.toString(stream.toArray())); System.out.println(Arrays.toString(a));
將數組轉為流式,對array進行流式處理,可用一切流式處理的方法。
public static void sort(T [] a)
例:
int[] a = {20, 3, 32, 1, 72, 26, 35}; Arrays.sort(a);
public static boolean equals(T[] a, T[] a2)
例:
int[] a = {20, 3, 32, 1, 72, 26, 35}; int[] b = {3, 5, 7, 8, 54, 23, 9}; boolean boo = Arrays.equals(a, b);
比較的原則是長度相等,元素相等。
// 用val替換數組指定范圍的值 public static void fill(T[] a, int fromIndex, int toIndex, T val)
例:
int[] a = {1, 2, 3, 4}; Arrays.fill(a, 0,2,5);
public static char[] copyOf(char[] original, int newLength)
例:
int[] b = {3, 5, 7, 8, 54, 23, 9}; int[] d = Arrays.copyOf(b, b.length);
Arrays 的 copyOf() 方法傳回的數組是新的數組對象,改變傳回數組中的元素值,不會影響原來的數組。
copyOf() 的第二個自變量指定要建立的新數組長度,如果新數組的長度超過原數組的長度,則保留數組默認值。
public static int binarySearch(byte[] a, byte key) // 查詢元素第一次出現的位置
例:
int[] b = {3, 5, 7, 8, 9, 23, 54}; int i = Arrays.binarySearch(b, 5);
使用二分搜索法來搜索指定的數組,方法返回要搜索元素的索引值。
注:必須在進行此調用之前對數組進行排序(sort 方法)。如果沒有對數組進行排序,則結果是不明確的。如果數組包含多個帶有指定值的元素,則無法保證找到的是哪一個。
查找效率比一般的從數組中從左到右挨個挨個的查找的平均查找時間要快。
public static int hashCode(int a[]); // 返回數組的hashCode值
例:
int[] a = {1, 2, 3, 4}; System.out.println(Arrays.hashCode(a)); // 結果:955331
關于“Java如何使用Arrays工具類”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。