数组之Arrays工具类
1. 排序 对数组升序排序
sort(int[] a) : 整个数组升序排序。
sort(int[] a, int from, int to) 对数组进行局部排序。从from到to - 1区间进行排序。
sort(T[] a, Comparator) 自定义排序规则。对二维数组排序,要用此方法。
parallelSort(int[] a) : 并行排序。 当数组长度小于等于 1 << 13 (8192) 或者CPU 处理器只有一个的话,还是按二分快速排序,和sort方法一样。 否则走并行ForkJoin方式。
2. 二分查找 binarySearch(int[] a, int key): int, 在数组中进行二分查找 key, 找到返回key在数组的索引,找不到返回一个负数;
binarySearch(int[] a, int from, int to, int key): int 在数组中的范围from到 to - 1进行二分查找 key, 找到返回key在数组的索引,找不到返回一个负数;
3. copyOf(int[] a, int newLength): T[] , 复制数组,产生一个长度为newLength的新数组。
copyOfRange(int[] a, int from, int to), 复制数组,从from 开始复制, 复制长度为 to - from和数组长度 - from的小者。
4. asList(T...) : List<T>, 快速转换成ArrayList, 这里的ArrayList是Arrays的内部类,不是通常的ArrayList的集合类。这里的返回值不能进行集合的增删。
5. toString(int[] a),数组转成字符串。
deepToString(Object[]), 对二维数组或者对象数组,拼接字符串。
6. fill(int[] a, int val), 对数组填充,每个元素赋值为val.
fill(int[] a, int from, int to, int val), 对 数组范围 from 到 to -1 的元素设置值为val.
7. setAll(int[] a, IntFunction<? extends T> generator),设置数组元素值为根据lambda表达式获取。
parallelSetAll(int[] a, IntFunction<? extends T> generator), 并行进行数组值设置。
8. spliterator(T[]): 数组变成分割器, 每次都分割成 length / 2 的元素。
9. equals(int[] a, int[] b) : boolean, 判断两个数组是否相等。
deepEquals(Object[] a, Object[] b): 对二维数组或对象数组进行比较是否相等。
10. stream(T[]) 获取数组stream流

浙公网安备 33010602011771号