java工具类--Arrays

版权声明:如需转载注明出处 https://blog.csdn.net/u011463794/article/details/88924928

平时在做编程题的时候遇到数组处理总是很麻烦,需要自己写,后来我发现了一个很好用的工具类Arrays
Java提供的Arrays包含许多类方法,可以直接用Arrays.类方法的形式使用

下面是该类的定义:

java.lang.Object 
java.util.Arrays 
public class Arrays
extends Object

其中很有用的几个方法如下:

public static <T> List<T> asList(T... a)
返回由指定数组支持的一个固定大小的列表。

public static int binarySearch(Object[] a, Object key)
使用二进制搜索算法在指定的对象中搜索指定的数组。数组必须排序为升序按其元素的 natural ordering(由 sort(Object[])法)进行调用之前。如果它没有排序,结果是不确定的。 

public static <T> T[] copyOf(T[] original,  int newLength)
复制指定的数组,截断或填充空值(如果需要)所以副本具有指定的长度。

public static <T> T[] copyOfRange(T[] original, int from, int to)
将指定的数组指定的范围复制到一个新的数组中。该范围的初始指标( from)必须是零和 original.length之间

public static boolean equals(Object[] a,  Object[] a2)
如果两个数组包含相同数量的元素,和在两个数组中的所有对应的元素是相等的,返回true

public static void fill(Object[] a, int fromIndex, int toIndex,  Object val)
将指定的对象引用分配给指定的对象数组的指定范围的每个元素。范围是从fromIndex到toIndex,如果没有这两个参数,则代表把数组a的所有元素都赋值为val

public static void sort(Object[] a,  int fromIndex,  int toIndex)
各种各样的指定对象数组的指定范围为升序,根据其元素的 natural ordering。范围要排序的指标 fromIndex到toIndex。如果没有范围参数,也就是重载,意思是排序所有的元素,需要注意的是范围内的元素必须实现 Comparable接口

public static String toString(Object[] a)
返回指定数组的内容的字符串表示形式。

下面是例子

import java.util.Arrays;
import java.util.Comparator;
import java.util.List;

/**
* 项目名:		Atest
* 包名:		
* 文件名:		ArraysTest.java
* 创建时间:	2019年3月31日
* 
* @author:	xiatom
* 描述:		
* 
*
**/
public class ArraysTest {

	public static void main(String[] args) {

		
		List<String> stooges = Arrays.asList("Larry", "Moe", "Curly"); 
		//得到[Larry, Moe, Curly]
		
		int[] a = {1,2,3,4,5,6,7};
		int[] b = Arrays.copyOf(a, a.length);
		//b的值跟a一样,不过是新的对象
		
		int[] c = new int[5];
		Arrays.fill(c, 10);
		//得到10 10 10 10 10 
		
		int[] d = {3,2,4,6,5,8,6,9,1};
		Arrays.sort(d);
		//得到1 2 3 4 5 6 6 8 9 

		int[] e = {3,2,4,6,5,8,6,9,1};
		Arrays.sort(e,4,8);
		//得到3 2 4 6 5 6 8 9 1
	}
、
}

猜你喜欢

转载自blog.csdn.net/u011463794/article/details/88924928