Arrays里面包含了一系列静态方法,用于管理或操作数组(比如排序和搜索).
常用方法
toString返回数组的字符串形式
Arrays.toString(arr)
sort 排序(自然排序和定制排序)
Integer arr[ = {1, -1, 7,0,89};
binarySearch通过二分搜索法进行查找,要求必须排好序
int index = Arrays.binarySearch(arr,3);
copyOf 数组元素的复制
lnteger[] newArr = Arrays.copyOf(arr, arr.length);
fill 数组元素的填充
Integer[] num = new Integer[]{9.3,2Arrays.fill(num, 99);
equals 比较两个数组元素内容是否完全一致
boolean equals = Arrays.equals(arr, arr2);
asList将一组值,转换成list
List
asList = Arrays.asList(2,3,4.5,6,1); System.out.println(“asList=” + asList);
package test;import java.util.Arrays;import java.util.List;public class Main {public static void main(String[] args) {Integer[] arr = {1, 2, 90, 123, 567};// binarySearch 通过二分搜索法进行查找,要求必须排好//1. 使用 binarySearch 二叉查找//2. 要求该数组是有序的. 如果该数组是无序的,不能使用binarySearch//3. 如果数组中不存在该元素,就返回 return -(low + 1); // key not found.//low表示该数字应该存在的位置int index1 = Arrays.binarySearch(arr, 567);//返回该数字的索引System.out.println("index=" + index1);int index2 = Arrays.binarySearch(arr, 92);//返回该数字的索引System.out.println("index=" + index2);//-(3 + 1) = -4//copyOf 数组元素的复制//1. 从 arr 数组中,拷贝 arr.length个元素到 newArr数组中//2. 如果拷贝的长度 > arr.length 就在新数组的后面 增加 null//3. 如果拷贝长度 < 0 就抛出异常NegativeArraySizeException//4. 该方法的底层使用的是 System.arraycopy()Integer[] newArr = Arrays.copyOf(arr, arr.length);System.out.println("==拷贝执行完毕后==");System.out.println(Arrays.toString(newArr));//ill 数组元素的填充Integer[] num = new Integer[]{9,3,2};//1. 使用 99 去填充 num数组,可以理解成是替换原来的元素Arrays.fill(num, 99);System.out.println("==num数组填充后==");System.out.println(Arrays.toString(num));//equals 比较两个数组元素内容是否完全一致Integer[] arr2 = {1, 2, 90, 123};//1. 如果arr 和 arr2 数组的元素一样,则方法true;//2. 如果不是完全一样,就返回 falseboolean equals = Arrays.equals(arr, arr2);System.out.println("equals=" + equals);//asList 将一组值,转换成list//1. asList方法,会将 (2,3,4,5,6,1)数据转成一个List集合//2. 返回的 asList 编译类型 List(接口)//3. asList 运行类型 java.util.Arrays#ArrayList, 是Arrays类的// 静态内部类 private static class ArrayList<E> extends AbstractList<E>// implements RandomAccess, java.io.SerializableList asList = Arrays.asList(2,3,4,5,6,1);System.out.println("asList = " + asList);System.out.println("asList的运行类型" + asList.getClass());}}

