Arrays.asList( )
作用:将数组转化为List集合的方法
参数:动态参数(T.....a)
返回值:LIst<T>集合
举例
//创建临时集合(原因:元素一个个add太繁琐),创建好了之后不能再往临时集合中添加数据了
List<String> friedList = Arrays.asList("HY","JX","HF","JG");
ArrayList<String> list2 = new ArrayList<String>();
list2.addAll(friedList); //全部添加至集合中
System.out.println(list2);
Arrays.binarySearch( )
作用:查找目标元素(前提是数组必须有序)
参数:数组、目标值
返回值:目标元素的位置(没有找到返回-1)
举例:
//二分查找(数组必须为有序数组)
int[] nums1={1,2,3,4,5,6,7,8,9};//有序
int target=5;
int index1=Arrays.binarySearch(nums1,5);
System.out.println("所找的数在该数组nums1下标为"+index1+"的地方");
int[] nums2={2,4,1,5,8,7,6};//无序
Arrays.sort(nums2); //排序:默认升序
int index2=Arrays.binarySearch(nums2,5);
System.out.println(Arrays.toString(nums2));
System.out.println("所找的数在该数组nums2下标为"+index2+"的地方");
Arrays.copyOf( )
作用:复制数组
参数:原数组、复制元素个数
返回值:int[ ]类型的数组
举例:
int[] arr1 = {1, 5, 9, 3, 6, 7, 8, 10};
//Arrays.copyOf(源数组,length):从下标0开始复制,复制length个元素
int[] arr2 = Arrays.copyOf(arr1, 4);
//当length大于源数组,并且会进行扩容
int[] arr4 = Arrays.copyOf(arr1, 10);
Arrays.copyOfRange( )
作用:复制数组
参数:原数组、开始复制的位置、结束复制的位置
返回值:int[ ]类型的数组
举例:
//Arrays.copyOfRange(源数组,from,to):从from开始复制,到to结束(不包含下标to的元素)
int[] arr3 = Arrays.copyOfRange(arr1, 2, 6);
//复制后五个数组,并to大于源数组的length,不仅复制了源数组,并且将会扩容
int[] arr5=Arrays.copyOfRange(arr1,3,arr1.length+10);
Arrays.fill( )
作用:数组的填充
参数:填充的数组对象、填充值
返回值:无返回值
举例:
//填充
int[] num = new int[10];
Arrays.fill(num,5);
System.out.println(Arrays.toString(num));
Arrays.sort( )
作用:对数组进行排序
参数:一个数组
返回值:无返回值
举例
int[] number={5,2,9,7,1};
System.out.println("排序前:"+Arrays.toString(number));
Arrays.sort(number);
System.out.println("排序后:"+Arrays.toString(number));
Arrays.toString( )
作用:查看数组中的所有值
参数:一个数组
返回值:字符串
举例:
//定义数组的语法1:数组类型[] 数组名称 = new 数组类型[长度]
int[] arr1 = new int[10];//默认值为0
//语法2
double[] arr2;//声明数组//默认值0.0
arr2 = new double[2];//创建数组(分配内存空间)
boolean[] arr3 = new boolean[5];//默认值false
String[] arr4 = new String[5];
//打印方式1:直接打印数组(数组类型@内存地址)
System.out.println(arr1);//[I@135fbaa4
System.out.println(arr2);//[D@45ee12a7
System.out.println(arr3);//[Z@330bedb4
//打印方式2:通过Arrays工具类的toString()方法查看数组中的所有值
System.out.println(Arrays.toString(arr1));
System.out.println(Arrays.toString(arr2));
System.out.println(Arrays.toString(arr3));
System.out.println(Arrays.toString(arr4));