Arrays工具类:用来操作数组(比如排序和搜索)的各种方法
- 常用方法:
- 使用二分法查找
- Arrays.binarySearch(int[] array, int value);
- 数组内容转成字符串的形式输出
- Arrays.toString(int[] array);
- 数组排序
- Arrays.sort(int[] array);
- 复制指定的数组
- Arrays.copyOf(int[] array, int length);
- Arrays.copyOf(int[] array, int from, int to);
- System.arraycopy(Object src, int srcPos, Object dest, int destPos,int length)
- 判断两个数组是否相等
- Arrays.equels();
- 使用指定元素填充数组
- Arrays.fill();
package Stringlei;
/*
*@author Shishuai E-mail:1198319583@qq.com
*@version Create time : 2019年4月1日下午4:09:04
*类说明:
*/
import java.util.Scanner;
import java.util.Arrays;;
public class Paixu {
public static void main(String[] args) {
int[] num = {45, 65, 76, 87, 98, 901};
//二分查找
int index = Arrays.binarySearch(num, 87);
System.out.println(index);
//输出数组
for(int n : num) {
System.out.println(n);
}
//在测试输出数据时 可以使用 toString 方法 更加方便
System.out.println(Arrays.toString(num));
//数组排序
int[] num2 = {10, 32, 44, 11, 543, 22, 100};
Arrays.sort(num2);
System.out.println(Arrays.toString(num2));
//数组的复制1
int[] num3 = Arrays.copyOf(num2, 10);//复制num2前7个 并后面空出3个
System.out.println(Arrays.toString(num3));
//数组的复制2
int[] newNum = new int[num2.length];
System.arraycopy(num2, 0, newNum, 0, num2.length);
System.out.println(Arrays.toString(newNum));
//小结 数组的复制
/*
* 效率由高到低排序是: System.arraycopy -> Arrays.copyOf -> for循环自己写
* */
//判断两个数组是否相等
System.out.println(Arrays.equals(num2, newNum));
//填充数组
Arrays.fill(newNum, 0);
System.out.println(Arrays.toString(newNum));
}
}