1.Arrays.toString(e) 返回指定数组的“深度内容”的字符串表示形式。 如果数组包含其他数组作为元素,则字符串表示包含其内容等等。 此方法用于将多维数组转换为字符串。 字符串表示由数组元素的列表组成,括在方括号( “[]” )中。 相邻的元素由字符", " (逗号后跟一个空格)分隔开。 元件由String.valueOf(Object)转换为字符串,除非它们本身阵列。 如果一个元素e是一个基本类型的阵列,它通过调用的Arrays.toString(e)适当重载转换为字符串作为。 如果元素e是引用类型的数组,则通过递归调用此方法将其转换为字符串。 为了避免无限递归,如果指定的数组包含自身作为元素,或者通过一个或多个数组级别包含对其自身的间接引用,则将自引用转换为字符串"[…]" 。 例如,仅包含对其自身的引用的数组将被呈现为"[[…]]" 。如果指定数组是null此方法返回"null"。
2.copyOf(boolean[] original, int newLength) 复制指定的数组,用零截取或填充(如有必要),以便复制具有指定的长度。 对于原始数组和副本都有效的所有索引,两个数组将包含相同的值。 对于在副本中而不是原件有效的任何索引,副本将包含0 。 当且仅当指定长度大于原始数组的长度时,这些索引才会存在。 参数 original - 要复制的数组 newLength - 要返回的副本的长度
3.arraycopy(Object src, int srcPos, Object dest, int destPos, int length) 将指定源数组中的数组从指定位置复制到目标数组的指定位置。 参数 src - 源数组。 srcPos - 源数组中的起始位置。 dest - 目标数组。 destPos - 目的地数据中的起始位置。 length - 要复制的数组元素的数量。 异常 IndexOutOfBoundsException - 如果复制将导致数据外部数据界限的访问。 ArrayStoreException - 如果由于类型不匹配, src数组中的元素无法存储到 dest数组中。 NullPointerException - 如果 src或 dest是 null 。
4.fill(int[] a, int val) 将指定的int值分配给指定的int数组的每个元素。 参数 a - 要填充的数组 val - 要存储在数组的所有元素中的值 。
1.
//复制打印一个数组 import java.util.Arrays; public class find{ public static void main(String[] args){ int[] a={1,2,3,4,5,6,7,8,9,10}; int m=6; System.out.println(Arrays.toString(a)); //打印数组a a=copyOf(a,m); //拷贝数组a的前6个元素 System.out.println(Arrays.toString(a)); //重新打印数组a,观察结果 } public static int[] copyOf(int[] original, int newLength) { int[] dest = new int[newLength]; int length = original.length <= newLength ? original.length : newLength; for (int i = 0; i < length; i++) { dest[i] = original[i]; } return dest; } }2.
import java.util.Arrays; public class find{ public static void main(String[] args) { int[] a = { 1, 2, 3, 4, 5 }; // 交换下标 0 和 下标 3 的数组 swap(a, 0, 3); System.out.println(Arrays.toString(a)); //产生[4, 2, 3, 1, 5] copyOf(a, 10); System.out.println(Arrays.toString(Arrays.copyOf(a, 10))); //产生[4, 2, 3, 1, 5, 0, 0, 0, 0, 0] int[] b = new int[10]; System.arraycopy(a, 0, b, 5, 5); System.out.println(Arrays.toString(b)); //产生[0, 0, 0, 0, 0, 4, 2, 3, 1, 5] Arrays.fill(a, 2); // 用2填充数组a System.out.println(Arrays.toString(a)); //产生[2, 2, 2, 2, 2] } public static int[] copyOf(int[] original, int newLength) { int[] dest = new int[newLength]; int length = original.length <= newLength ? original.length : newLength; for (int i = 0; i < length; i++) { dest[i] = original[i]; } return dest; } public static void swap(int[] a, int i, int j) { int t = a[i]; a[i] = a[j]; a[j] = t; } }