个人技术分享

Arrays

Arrays工具类的基本使用

概念:Arrays工具类是Java为我们提供的可以操作数组的基本工具类,位于java.util.Arrays包中,为我们提供了大量静态方法,用来实现对数组常见的操作。

常用方法

方法 返回类型 说明
sort(array) void 对数组 array 的元素进行排序(升序)
toString(array) String 将一个数组 array 转换成一个字符串
fill(array,val) void 把数组array的所有素都赋值为val
copyOf(array,length) 与array类型相同 把数组 array 复制成一个长度为 length 的新数组
copyOfRange(arr,start,end) 与array类型相同 将指定数组的指定范围复制到新数组中。
binarySearch(array,val) int 查询元素值 val 在数组 array 中的下标

代码实现:

import java.util.Arrays;
public class Test11{
	public static void main(String[] args){
		int[] arr = {5,72,9,4,21,1,6,3,81};	
		//排序 - 1,3,4,5,6,9,21,72,81
		Arrays.sort(arr);
		//查找
		//返回值规则:如果元素包含在数组中,返回下标;否则,(-(插入点) - 1)important !!!!!!!!!!!!!!
		int index = Arrays.binarySearch(arr,30);
		System.out.println("查找到元素的下标为:" + index);//-8
		
		//拷贝数组 - [1, 3, 4, 5, 6, 9, 21, 72, 81, 0, 0, 0, 0, 0, 0]
		int[] newArr1 = Arrays.copyOf(arr,15);
		
		//拷贝数组区间 - [4, 5, 6, 9, 21, 72, 81, 0, 0]
		int[] newArr2 = Arrays.copyOfRange(newArr1,2,11);//(目标数组,开始下标-包含,结束下标-排他)
		
		//替换所有元素 - [888, 888, 888, 888, 888, 888, 888, 888, 888]
		Arrays.fill(newArr2,888);
		
		//替换区间元素
		Arrays.fill(newArr2,2,4,666);//(目标数组,开始下标-包含,结束下标-排他,替换元素)
	
		//将数组转换为字符串
		String str = Arrays.toString(newArr2);
		System.out.println(str);
	}
}