java中Arrays工具类的使用
java.util.Arrays:操作数组的工具类,里面定义了很多操作数组的方法
常用的有以下几种(后续还会再补充)
1.boolean equals(int[] a,int[] b):判断两个数组是否相等。
2.String toString(int[] a):输出数组信息。
3.void fill(int[] a,int val):将指定值填充到数组之中。
4.void sort(int[] a):对数组进行排序。
5.int binarySearch(int[] a,int key):对指定元素进行查找。
6. Arrays.copyOfRange(arr,[] 起始索引位置, 终止索引位置):对数组进行复制。
7. Arrays.copyOf(arr[], 长度):对数组进行复制,如果复制后的数组长度小于数组arr的长度,则会从数组arr的第一个元素开始截取满足要求的长度为止。
使用前
使用前需要加入导包:import java.util.Arrays;
分别举例说明
-
boolean equals(int[]a,int[]b)的使用 :判断两个数组是否相等
int[] arr1 = new int[]{1,2,3,4}; int[] arr2 = new int[]{1,3,2,4}; boolean isEquals = Arrays.equals(arr1, arr2); System.out.println(isEquals); 输出结果: false
-
String toString(int[] a)的使用:输出数组信息,使用此工具不用再去遍历数组
int[] arr1 = new int[]{1,2,3,4}; System.out.println(Arrays.toString(arr1)); 输出结果为: [1, 2, 3, 4]
-
void fill(int[] a,int val):将指定值填充到数组之中。
int[] arr1 = new int[]{1,2,3,4}; Arrays.fill(arr1,10); System.out.println(Arrays.toString(arr1)); 输出结果为: [10, 10, 10, 10]
-
void sort(int[] a):对数组进行排序。排完序可以搭配toString()输出。
int[] arr2 = new int[]{1,3,2,4}; Arrays.sort(arr2); System.out.println(Arrays.toString(arr2)); 输出结果为: [1, 2, 3, 4]
-
int binarySearch(int[] a,int key):对指定元素进行查找。若找到,输出结果为此数在数组中的位置;若未找到指定元素则输出结果为一个负数,因此一般配合if语句使用。
int[] arr3 = new int[]{54,66,79,105,210,333}; int index = Arrays.binarySearch(arr3, 210); if(index >= 0){ System.out.println(index); }else{ System.out.println("未找到"); } 输出结果为: 4
-
Arrays.copyOfRange(int[], 起始索引位置, 终止索引位置):对数组进行复制
int[] arr3 = new int[]{54,66,79,105,210,333};
int[] newArray = Arrays.copyOfRange(arr3, 0, 3);
System.out.println( Arrays.toString(newArray));
输出结果为:
[54,66,79]
- Arrays.copy(arr[], 长度):对数组进行复制。如果新数组的长度大于arr3的长度,整数型用0填充,char型用null填充。
int[] arr3 = new int[]{58,26,79,98,210,333};
int[] newArray = Arrays.copyOf(arr3, 4);
System.out.println( Arrays.toString(newArray));
输出结果为:
[58,26,79,98]