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