一、Arrays

 

  1. 此类包含用来操作数组(比如排序和搜索)的各种方法。
  2. 除非特别注明,否则如果指定数组引用为 null,则此类中的方法都会抛出 NullPointerException。

二、常用方法

public class Arrays 
{
	//私有化构造函数,不能创建对象
    private Arrays() {}

	/**
	 *返回一个受指定数组支持的固定大小的列表
	 *此方法同 Collection.toArray() 一起,充当了基于数组的 API 与基于 collection 的 API 之间的桥梁
	 *可以使用集合的思想和方法来操作数组中的元素。
	 *注意:不能使用集合的增删方法,因为数组的长度是固定的,其他方法可以使用。
	 *如果增删会发生:UnsupportedOperationException
	 *如果数组中的元素都是对象,那么变成集合时,数组中的元素就直接转成集合中的元素
	 *如果数组中的元素都是基本数据类型,那么会将该数组作为集合中的元素存在
	 */
	public static <T> List<T> asList(T... a){}

	/**
	 *使用二分搜索法来搜索指定的 数据类型 数组,以获得指定的值。数组必须保证有序
	 *可以是任意类型的数组
	 */
	public static int binarySearch(byte[] a,
                               byte key){}

	public static int binarySearch(byte[] a,
                               int fromIndex,
                               int toIndex,
                               byte key){}

	/**
	 *复制指定的数组,截取或用 0 填充(如有必要),以使副本具有指定的长度
	 *可以是任意类型的数组
	 */
	public static float[] copyOf(float[] original,
                             int newLength){}

	//将指定数组的指定范围复制到一个新数组
	public static byte[] copyOfRange(byte[] original,
                                 int from,
                                 int to){}

	//如果两个指定数组彼此是深层相等 的,则返回 true。与 equals(Object[],Object[]) 方法不同,此方法适用于任意深度的嵌套数组。
	public static boolean deepEquals(Object[] a1,
                                 Object[] a2){}

	//基于指定数组的“深层内容”返回哈希码。如果数组包含作为元素的其他数组,则哈希码将基于其内容,并以此类推,直至无穷。
	public static int deepHashCode(Object[] a){}

	//返回指定数组“深层内容”的字符串表示形式。如果数组包含作为元素的其他数组,则字符串表示形式包含其内容等
	public static String deepToString(Object[] a){}

	//如果两个指定的 byte 型数组彼此相等,则返回 true。
	//如果两个数组包含相同数量的元素,并且两个数组中的所有相应元素对都是相等的,则认为这两个数组是相等的
	public static boolean equals(byte[] a,
                             byte[] a2){}

	//将指定的 byte 值分配给指定 byte 节型数组的每个元素。
	public static void fill(byte[] a,
                        byte val){}

	//将指定的 byte 值分配给指定 byte 型数组指定范围中的每个元素。填充的范围从索引 fromIndex(包括)一直到索引 toIndex(不包括)
	public static void fill(byte[] a,
                        int fromIndex,
                        int toIndex,
                        byte val){}

	//基于指定数组的内容返回哈希码。
	public static int hashCode(boolean[] a){}

	//对指定的 char 型数组按数字升序进行排序。该排序算法是一个经过调优的快速排序法
	public static void sort(char[] a){}

	//对指定 char 型数组的指定范围按数字升序进行排序。排序的范围从索引 fromIndex(包括)一直到索引 toIndex(不包括)
	public static void sort(char[] a,
                        int fromIndex,
                        int toIndex){}

	//返回指定数组内容的字符串表示形式。
	//字符串表示形式由数组的元素列表组成,括在方括号("[]")中。相邻元素用字符 ", "(逗号加空格)分隔。
	public static String toString(double[] a){}

}