/*
public static String toString(数组) 数组拼接成一个字符串
public static int binarySearch(数组,查找的元素) 二分查找法查找元素
public static int[] copyOf(原数组,新数组的长度)
public static int[] copyOfRange(原数组,起始索引,结束索引)
public static void fill(数组,元素)
public static void sort(数组)
public static void sort(数组,排序规则)
*/
import java.util.Arrays;
public class Main{
public static void main(String[] args){
/*
public static String toString(数组) 数组拼接成一个字符串
public static int binarySearch(数组,查找的元素) 二分查找法查找元素
public static int[] copyOf(原数组,新数组的长度)
public static int[] copyOfRange(原数组,起始索引,结束索引)
public static void fill(数组,元素)
public static void sort(数组)
public static void sort(数组,排序规则)
*/
//toString:将数组变成字符串
System.out.println("————————toString————————");
int[] arr = {1,2,3,4,5,6,7,8,9,10};
System.out.println(Arrays.toString(arr));
//binarySearch:二分查找法查找元素
//细节1:二分查找的前提:数组中元素必须是有序的 数组中元素必须是升序的
//细节2:如果要查找的元素是存在的,那么返回的是真实的索引,如果查找的元素不存在的
//返回的是 (-插入点)-1 插入点:就是这个数字本来应该存在的位置
//比如20要插入在10后面 也就是在10索引的位置插入 则插入点是 (-10)-1
//但是考虑到-0这种情况 所以我们对于0规定为-1
System.out.println("————————binarySearch——————————");
System.out.println(Arrays.binarySearch(arr,10));
System.out.println(Arrays.binarySearch(arr,2));
System.out.println(Arrays.binarySearch(arr,20));
//copyOf拷贝数组:
//参数一:老数组
//参数二:新数组的长度
//方法 的底层是根据第二个参数来创建新的数组
//如果新的数组长度<老数组 则会部分拷贝
//如果新数组的长度等于老数组的长度 会完全拷贝
//如果新数组的长度大于老数组的长度 就会补上默认值
System.out.println("————————copyOf——————————");
int[] newArr1 = Arrays.copyOf(arr,20);
System.out.println(Arrays.toString(newArr1));
System.out.println("——————copyOfRange——————————");
int[] newArr2 = Arrays.copyOfRange(arr,2,5);//包头不包尾巴
System.out.println(Arrays.toString(newArr2));
//这个部分是为了实现填充数据的功能
System.out.println("——————fill——————————");
Arrays.fill(arr,100);
System.out.println(Arrays.toString(arr));
//这个部分是快速排序
System.out.println("——————sort——————————");
int arr2[] = {10,2,3,5,6,1,7,8,4,9};
Arrays.sort(arr2);
System.out.println(Arrays.toString(arr2));
}
}