Java面向对象
Java异常
Java数组
Java常用类
Java集合
Java IO流
Java线程
Java反射
Socket编程
Java注解开发
Java GoF设计模式
HashMap
Java内存模型
Java线性表

Java中arrays工具类

 

 

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
		
	}

}

 

全部教程