Arrays.
以下默认由Arrays. 开头
asList( )
返回一个受指定数组支持的固定大小的列表
暂时没用过
binarySearch
二分法搜索数组中的值返回索引
binarySearch(int[ ] a, int key)
binarySearch(数组 , 要搜索的值)
需要先对数组排序
支持类型 byte short char int long flort double Object
int[] arr1 = { 1, 3, 5, 6, 7, 9, 13, 25, 43, 56, 76 };
// binarySearch(int[] a, int key)
// 使用二分搜索法来搜索指定的 int 型数组,以获得指定的值。
System.out.println(Arrays.binarySearch(arr1, 9));
//5
binarySearch(T[] a, int fromIndex, int toIndex, T key, Comparator<? super T> c)
使用二分搜索法来搜索指定数组的范围,以获得指定对象。
binarySearch(T[] a, T key, Comparator<? super T> c)
使用二分搜索法来搜索指定数组,以获得指定对象。
copyOf
生成定长的新数组(从头截取 不足的用默认值填充)
copyOf(int[] original, int newLength)
copyOf(数组 , 新数组长度)
支持类型 boolean byte short char int long flort double Object
// copyOf(int[] original, int newLength)
// 复制指定的数组,截取或用 0 填充(如有必要),以使副本具有指定的长度 。
int[] array = {3,7,8,9,2};
System.out.println(Arrays.toString(Arrays.copyOf(array, 7)));
System.out.println(Arrays.toString(Arrays.copyOf(array, 3)));
//[1, 3, 5, 6, 7, 9, 13, 25, 43, 56, 76]
//[3, 7, 8, 9, 2, 0, 0]
copyOfRange
复制一段数组到新数组
copyOfRange(int[] original, int from, int to)
copyOfRange( 数组 , 开始索引 , 结束索引)------[ 开始 , 结束 )
将指定数组的指定范围复制到一个新数组
支持类型 boolean byte short char int long flort double Object
//copyOfRange(int[] original, int from, int to)
//将指定数组的指定范围复制到一个新数组
int[] array = {3,7,8,9,2};
System.out.println(Arrays.toString(Arrays.copyOfRange(array, 1, 4)));
//[7, 8, 9]
equals
比较两个数组
equals( int[ ] a1 , int[ ] a2 )
equals( 数组1 , 数组2 )
如果两个指定的 int 型数组彼此相等,则返回 true。
这里的equals方法是Arrays类中的重写方法 不是比较地址 只能比较一维数组
支持类型 boolean byte short char int long flort double Object
//equals(int[] a, int[] a2)
//如果两个指定的 int 型数组彼此相等,则返回 true。
int[] array1 = { 3, 5, 7, 9 };
int[] array2 = { 3, 5, 7, 9 };
System.out.println(Arrays.equals(array1, array2));
//true
fill
给数组中每个元素赋值
fill( int[ ] a , int val )
fill( 数组 , 新元素 )
将指定的 int 值分配给指定 int 型数组的每个元素。
支持类型 boolean byte short char int long flort double Object
// fill(int[] a, int fromIndex, int toIndex, int val)
// 将指定的 int 值分配给指定 int 型数组指定范围中的每个元素。
int[] array = { 1, 3, 5, 7, 9 };
Arrays.fill(array, 4);
System.out.println(Arrays.toString(array));
//[4, 4, 4, 4, 4]
给数组中一段元素赋值
fill(int[ ] a , int fromIndex , int toIndex , int val)
fill(数组 , 开始索引 , 结束索引 , 新元素) ------[ 开始 , 结束 )
将指定的 int 值分配给指定 int 型数组指定范围中的每个元素。
支持类型 boolean byte short char int long flort double Object
// fill(int[] a, int fromIndex, int toIndex, int val)
// 将指定的 int 值分配给指定 int 型数组指定范围中的每个元素。
int[] array = { 1, 1, 1, 1, 1 };
Arrays.fill(array, 1, 4, 3);
System.out.println(Arrays.toString(array));
//[1, 3, 3, 3, 1]
hashCode
返回数组哈希码
hashCode(long[ ] a)
hashCode(数组)
基于指定数组的内容返回哈希码。
支持类型 boolean byte short char int long flort double Object
// hashCode(int[] a)
// 基于指定数组的内容返回哈希码。
int[] array = { 1, 3, 5, 7, 9 };
System.out.println(Arrays.hashCode(array));
//29647076
sort
数组升序排列
sort( int[ ] a )
sort( 数组 )
对指定的 int 型数组按数字升序进行排序。
支持类型 byte short char int long flort double Object
对数组指定范围升序排列
sort( int[ ] a, int fromIndex, int toIndex)
sort( 数组 , 开始索引 , 结束索引) ------[ 开始 , 结束 )
对指定 int 型数组的指定范围按数字升序进行排序。
支持类型 byte short char int long flort double Object
// sort(int[] a)
// 对指定的 int 型数组按数字升序进行排序。
int[] array = { 5, 8, 9, 3, 2 };
Arrays.sort(array);
System.out.println(Arrays.toString(array));
// [2, 3, 5, 8, 9]
// sort(int[] a, int fromIndex, int toIndex)
// 对指定 int 型数组的指定范围按数字升序进行排序
int[] array1 = { 5, 8, 9, 3, 2 };
Arrays.sort(array1, 1, 4);
System.out.println(Arrays.toString(array1));
//[5, 3, 8, 9, 2]
toString
返回数组形式
toString( int[ ] a)
toString( 数组 )
返回指定数组内容的字符串表示形式
支持类型 boolean byte short char int long flort double Object
//toString(int[] a)
//返回指定数组内容的字符串表示形式。
int[] array = { 5, 8, 9, 3, 2 };
System.out.println(array);
//[I@15db9742
System.out.println(Arrays.toString(array));
//[5, 8, 9, 3, 2]