26.Java之Arrays类(sort排序,binarySearch查找,copyOf数组元素的复制,equals比较两个数组元素内容是否完全一致,asList()将一组值转换成 list

26.1.Arrays类常见方法

Arrays里面包含了一系列静态方法,用于管理或操作数组(比如排序和搜索)
  1. toString() 返回数组的字符串形式
Arrays.toString(arr)
  1. sort() 排序(自然排序和定制排序)
Integer arr[] = {1,-1,8,0,89};
// 自然排序-从小到大
Arrays.sort(arr);
// 定制排序-排序规则,多应用于类数组按某属性排序
Arrays.sort(arr, new Comparator<Integer>() {
  @Override
       public int compare(Integer o1, Integer o2) {
           return o2 - o1;
       }
   });
  1. binarySearch() 通过二分搜索法进行查找,要求必须排好序
int index = Arrays.binarySearch(arr,4);

要求该数组是有序的,且 要从小到大排序
如果数组中不存在该元素,就返回 return -(low + 1)

  1. copyOf() 数组元素的复制
Integer newArr[] = Arrays.copyOf(arr,4);

如果 要拷贝的长度 > 原数组长度 ,就在新数组的后面增加 null
如果 要拷贝的长度 < 0,就抛出异常

  1. fill() 数组元素的填充
Integer[] num = new Integer[4];
Arrays.fill(num,12);
  1. equals() 比较两个数组元素内容是否完全一致
Integer[] arr1 = {1,2,90,12};
Integer[] arr2 = {1,90,2,12};
boolean equals = Arrays.equals(arr1,arr2);//FALSE

数组里的元素顺序也要进行比较

  1. asList() 将一组值,转换成 list
List asList = Arrays.asList(arr);
上一篇:面试官:你知道JVM内存溢出问题的定位方法吗?


下一篇:Java的Arrays类api详解