java.util.Arrays类能方便地操作数组,它提供的所有方法都是静态的。具有以下功能:
-
比较数组:通过
equals
方法比较数组中元素值是否相等结果为true、false
.
-
把整个数组里的每一个元素的值进行替换为val。
-
对数组排序:通过
sort
方法,按升序。 -
copyof
把一个数组复制出一个新数组(新数组的长度为length)。 -
BinarySearch
:找到元素在数组当中的下标。 -
toString
方法是把数组转换成字符串进行输出。(参数是数组,返回的是字符串)
package test;
import java.util.Arrays;
public class testArrays {
public static void main(String[] args) {
int[] arr1 = {1,5,12,36,55,78,98};
int[] arr2 = {1,36,12,5,78,98,55};
int[] arr3 = {1,5,12,36,55,78,99};
//1. 比较数组:通过`equals`方法比较数组中元素值是否相等结果为`true、false`.(布尔型不能比较)
boolean equals1 = Arrays.equals(arr1, arr2);
boolean equals2 = Arrays.equals(arr1, arr3);
System.out.println("arr1 = arr2 的结果:"+equals1);
System.out.println("arr1 = arr3 的结果:"+equals2);
//2. 把整个数组里的每一个元素的值进行替换为val
System.out.print("Arrays.fill把整个数组里的每一个元素的值进行替换为0: ");
Arrays.fill(arr1,0);
output(arr1);
//3. 对数组排序:通过`sort`方法,按升序。
System.out.print("Arrays.sort对数组排序:通过`sort`方法,按升序: ");
Arrays.sort(arr2);
output(arr2);
//4. `copyof`把一个数组复制出一个新数组(新数组的长度为length)。
//newLength代表截取arr的长度,如果newLength > arr.length的时候回补0
System.out.print("Arrays.copyOf(arr,newLength)把一个数组复制出一个新数组: ");
int[] ints = Arrays.copyOf(arr3, arr3.length+1);
output(ints);
//5. BinarySearch:找到元素在数组当中的下标。
int i = Arrays.binarySearch(arr2, 12);
System.out.println("12在数组arr2中的索引位置为: "+i);
//6. `toString`方法是把数组转换成字符串进行输出。(参数是数组,返回的是字符串)
String s = Arrays.toString(arr3);
System.out.println("Arrays.toString是把数组转换成字符串进行输出: "+s);
}
public static void output(int[] a){
for (int i = 0; i < a.length; i++) {
System.out.print(a[i]);
if (i < a.length - 1){
System.out.print(" ");
}
}
System.out.println("");
}
}
结果展示
arr1 = arr2 的结果:false
arr1 = arr3 的结果:false
Arrays.fill把整个数组里的每一个元素的值进行替换为0: 0 0 0 0 0 0 0
Arrays.sort对数组排序:通过`sort`方法,按升序: 1 5 12 36 55 78 98
Arrays.copyOf(arr,newLength)把一个数组复制出一个新数组: 1 5 12 36 55 78 99 0
12在数组arr2中的索引位置为: 2
Arrays.toString是把数组转换成字符串进行输出: [1, 5, 12, 36, 55, 78, 99]