I学霸官方免费教程二十七:Java基础教程之Arrays类

Arrays类

数组的一个工具类,提供了一些静态的方法,用于操作数组;
不多说,直接上例子

实例:
//声明包
package array;
//导入包
//作用:告诉系统,ArraysDemo类中用到Arrays类时去java.util包下找Arrays类
import java.util.Arrays;
/**
 * 演示Arrays类的常用方法
 * @author 学霸联盟 - 赵灿
 */
public class ArraysDemo {
	public static void main(String[] args) {
		// 声明三个数组
		int[] array1 = { 1, 2, 3 };
		int[] array2 = { 1, 2, 3 };
		int[] array3 = { 1, 2, 3, 6, 5, 4 };
		
		System.out.println("---------- 比较两个数组 ----------");
		//比较数组array1和array2中的内容是否相同
		boolean compare12Result = Arrays.equals(array1, array2);
		//比较数组array2和array3中的内容是否相同
		boolean compare23Result = Arrays.equals(array1, array3);
		System.out.println("array1和array2的比较结果为:"+compare12Result);
		System.out.println("array2和array3的比较结果为:"+compare23Result);
		
		/*
		 * 第一个参数:传入被复制的数组,第二个参数:复制的新数组长度
		 * 当新数组的长度大于旧数组长度时,多出的部分用数据类型对应的默认值填充
		 * array1:[1, 2, 3]使用以下代码复制后arrayCopy:[1, 2, 3, 0, 0]
		 */
		int[] arrayCopy = Arrays.copyOf(array1, 5);
		System.out.println("----------- 原数组 -----------");
		//遍历原数组
		arrayToString(array1);
		System.out.println("----------- 复制的数组 -----------");
		//遍历复制的数组
		arrayToString(arrayCopy);

		System.out.println("---------- 替换值前的数组 ----------");
		//遍历替换前的数组array1
		arrayToString(array1);
		System.out.println("---------- 替换值后的数组 ----------");
		/*
		 * 将数组中所有的值替换为同一个值
		 * 第一个参数:被替换的数组
		 * 第二个参数:替换后的值
		 */
		Arrays.fill(array1, 10);
		//遍历替换后的数组array1
		arrayToString(array1);
		
		System.out.println("---------- 排序前的数组 ----------");
		//遍历排序前的数组array3
		arrayToString(array3);
		//给数组array3排序(只能按升序排序)
		Arrays.sort(array3);
		System.out.println("---------- 排序后的数组 ----------");
		//遍历排序后的数组array3
		arrayToString(array3);
		
		System.out.println("----- 使用二分法(折半)查找元素 -----");
		//使用二分法查找数组中的元素,被查找数组必须按升序排序
		int index = Arrays.binarySearch(array3, 4);
		System.out.println("4在数组array3中的下标是:" + index);
	}

	/**
	 * 将数组转换为字符串形式,并输出
	 */
	private static void arrayToString(int[] array) {
		//将数组内容转换为字符串 
		String arrayStr = Arrays.toString(array);
		System.out.println(arrayStr);
	}
}
运行结果:
--------- 比较两个数组 ---------
array1和array2的比较结果为:true
array2和array3的比较结果为:false
----------- 原数组 -----------
[1, 2, 3]
----------- 复制的数组 -----------
[1, 2, 3, 0, 0]
--------- 替换值前的数组 ---------
[1, 2, 3]
--------- 替换值后的数组 ---------
[10, 10, 10]
--------- 排序前的数组 ---------
[1, 2, 3, 6, 5, 4]
--------- 排序后的数组 ----------
[1, 2, 3, 4, 5, 6]
----- 使用二分法(折半)查找元素 -----
4在数组array3中的下标是:3
相关文章
相关标签/搜索