static int:
binarySearch(int[] a, int key) 在a數組中查找key元素是否存在,如果存在返回key元素在數組中的索引值,如果不存在返回負數。
static int[]:
copyOf(int[] original, int newLength) 數組的復制, newLength指定新數組的長度, 把orginal數組中的元素復制到新的數組中,返回新的數組。
static int[]:
copyOfRange(int[] original, int from, int to) 把original數組[from,to]范圍的元素復制到新的數組中, 返回新的數組。
static String:
deepToString(Object[] a) 把多維數組中的元素轉換為字符串。
static void:
fill(int[] a, int val) 使用val值填充整個a數組。
static void:
parallelSort(int[] a) 對數組a進行并行排序, 適合數組元素非常多的情況。
static void:
sort(int[] a) 對數組a進行排序。
static <T> void:
sort(T[] a, Comparator<? super T> c) 對對象數組排序,可以指定對象的比較器。
static String:
toString(int[] a) 把數組的元素轉換為字符串。
package com.wkcto.chapter03.demo01;
import java.util.Arrays;
/**
* Arrays工具類的基本使用
* @author 蛙課網
*
*/
public class Test11 {
public static void main(String[] args) {
int [] data = {67,23,786,4,12,87};
//1)對數組排序
Arrays.sort(data);
//2)打印數組
System.out.println( Arrays.toString(data)); //[4, 12, 23, 67, 87, 786]
//3)數組復制
data = Arrays.copyOf(data, data.length*2 );
System.out.println( Arrays.toString(data )); //[4, 12, 23, 67, 87, 786, 0, 0, 0, 0, 0, 0]
data = Arrays.copyOf(data, data.length*2/3 );
System.out.println( Arrays.toString(data)); //[4, 12, 23, 67, 87, 786, 0, 0]
//4)填充
Arrays.fill(data, 6, data.length, 666);
System.out.println( Arrays.toString(data)); //[4, 12, 23, 67, 87, 786, 666, 666]
//5)二分查找, 前提是數組已經由小到大排序
Arrays.sort(data);
System.out.println( Arrays.toString(data)); //[4, 12, 23, 67, 87, 666, 666, 786]
//只要是返回結果大于等于0,表示元素存在, 結果是負數表示不存在
System.out.println( Arrays.binarySearch(data, 4));
System.out.println( Arrays.binarySearch(data, 67));
System.out.println( Arrays.binarySearch(data, 786));
System.out.println( Arrays.binarySearch(data, 666));
System.out.println( Arrays.binarySearch(data, 888)); //-9
}
}