Arrays类的常用方法
Sout:升序排列
public static void main(String[] args) {
int[] arr={1,23,54,34,7,28};//定义数组
System.out.println("排序前:");
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i]+"\t");
}
System.out.println();//换行
System.out.println("排序后:");
Arrays.sort(arr);
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i]+"\t");
}
}
运行结果:
排序前:
1 23 54 34 7 28
排序后:
1 7 23 28 34 54
equals:比较两个数组是否相等
public static void main(String[] args) {
int[] arr={1,23,54,34,7,28};
int[] arr1={1,23,54,34,7,28};
int[] arr2={1,23,43,4};
boolean a=Arrays.equals(arr,arr1);
boolean b=Arrays.equals(arr,arr2);
System.out.println(a+"\t"+b);
}
运行结果:
true false
toString:将一个数组转换成字符串类型,并用【】保护起来。
public static void main(String[] args) {
int[] arr={1,23,54,34,7,28};//定义数组
System.out.print(Arrays.toString(arr));
}
运行结果:
[1, 23, 54, 34, 7, 28]
fill:把数组array所有元素都赋值为指定数
public static void main(String[] args) {
int[] arr = {1, 23, 54, 34, 7, 28};
Arrays.fill(arr, 25);
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i] + "\t");
}
}
运行结果:
25 25 25 25 25 25
copyOf:把数组array复制成一个长度为length的新数组,返回类型与复制的数组一致
public static void main(String[] args) {
int[] arr={1,23,54,34,7,28};
int arr1[]=Arrays.copyOf(arr,9);
for (int i = 0; i < arr1.length; i++) {
System.out.print(arr1[i]+"\t");
}
}
运行结果:
1 23 54 34 7 28 0 0 0
binarySearch:查询元素值在数组中的下标(要求数组中元素已经按升序排列)如果元素不存在,则返回的是(-插入点-1),也就是说它会根据你需要查找的元素应该存在的位置下标,将该下标值再减去1即可。
public static void main(String[] args) {
int[] arr={1,17,23,54,66,98};
int one=Arrays.binarySearch(arr,-100);
int two=Arrays.binarySearch(arr,54);
int three=Arrays.binarySearch(arr,100);
System.out.println(one+"\t"+two+"\t"+three);
}
运行结果:
-1 3 -7