一、复制数组
java.lang.System类中的静态方法:
static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
从指定源数组中复制一个数组,复制从指定的位置开始,到目标数组的指定位置结束。
该方法将src数组里的元素赋值给dest数组的元素;srcPos,表示从src数组的第几个开始赋值。length参数指定将src数组的多少个元素赋给dest数组的元素。
参数说明:
src - 源数组。
srcPos - 源数组中的起始位置。
dest - 目标数组。
destPos - 目标数据中的起始位置。
length - 要复制的数组元素的数量。
以下方法中参数类型type表示8种基本数据类型或Object类。
二、java.util.Arrays类判断两个数组相等
static boolean equals(type[] a,type[] a2)
若a数组和a2数组的长度相等,且a数组和a2数组的数组元素也一一相同,该方法返回true;否则返回false。
三、java.util.Arrays类填充数组
static void fill(type[] a, boolean val)
该方法将会把a数组所有元素值都赋值为val。
static void fill(type[] a, int fromIndex, int toIndex, boolean val)
类似的,区别只是该方法仅仅将a数组的formIndex到toIndex索引的数组元素赋值为val。
四、java.util.Arrays类对数组排序
static void sort(type[] a)
该方法对a数组的元素进行排序。
static void sort(type[] a, int fromIndex, int toIndex)
该方法与前一个方法的作用相同,区别只是该方法仅将a数组的formIndex到toIndex索引的元素进行排序。
五、java.util.Arrays类复制数组
static type[] copyOf(type[] original, int newLength)
该方法将original数组复制成一个新数组,其中length是新数组的长度。如果length小于orignal数组的长度,则新数组就是原数组的前面length个元素;如果length大于original数组的长度,则新数组的前面元素就是原数组的所有元素,后面补充0(数值)、false(布尔)或null(引用)。
static type[] copyOfRange(type[] original, int from, int to)
该方法与copyOf方法相似,但该方法只赋值orginal数组的from索引到to索引的元素。
六、java.util.Arrays类对数组进行二分法查询
static int binarySearch(type[] a,type key)
使用二分法查询key元素值在a数组中出现的索引;若a数组不包含key元素值,则返回负数。
static int binarySearch(type[] a, int fromIndex, int toIndex, byte key)
类似的,该方法搜索a数组中formIndex到toIndex索引的元素。
说明:
调用binarySearch()该方法时要求数组中元素已经按升序排列,这样才能得到正确结果。
七、java.util.Arrays类将数组转化为List
static <T> List<T> asList(T... a)
方法:把一个数组或指定个数的对象转换成一个List集合。
该集合不是ArrayList实现类的实例,而是Arrays内部类ArrayList的实例。
Arrays.ArrayList是一个固定长度的List集合。程序只能遍历访问该集合里的元素。不可增加、删除该集合里的元素。
如果对Arrays.ArrayList对象增加,删除其中的元素。则会在运行时引发UnsupportedOperationException异常。
说明:与该方法对应的是Collection.toArray() 方法,Collection.toArray() 将集合转化为数组。
八、java.util.Arrays类将数组转化为字符串
static String toString(type[] a)
该方法就爱那个一个数组转换成一个字符串。该方法按顺序吧所个元素连缀在一起,多个元素用逗号“,”和空格隔开。
例:
import java.util.Arrays; public class ArrayTest { public static void main(String[] args) { int[] arr_a=new int[8]; System.out.println(Arrays.toString(arr_a)); } }
输出结果为:
[0, 0, 0, 0, 0, 0, 0, 0]