java数组的拷贝和扩容

1、拷贝arraycopy方法

        // 拷贝:arraycopy方法
	// arraycopy
	// 第一个参数:原数组
	// 第二个参数:原数组元素的起始位置
	// 第三个参数:目标数组
	// 第四个参数:目标数组元素的起始位置
	// 第五个参数:长度
	// 练习: b={0,0,3,4,0,.....}
	// System.arraycopy(a, 2, b, 2, 2);
	public static void test1() {
		int nums[] = { 0, 1, 2, 3, 4 };
		int muns[] = new int[5];
		System.arraycopy(nums, 0, muns, 2, 3);
		System.out.println(Arrays.toString(muns));
	}

 又是一种system的奇奇怪怪的方法,用处不多但效果明显,可以直接定义到数组的插入位置。还有其他多种拷贝的方法我觉得了解就好,会一种最优解即可。

2、扩容copyOf

        // 数组的扩容
	// copyOf
	// 第一个参数:原数组(拷贝)
	// 第二个参数:扩容之后的长度
	public static void test2() {
        String names[] = {"赵大"};
        names = Arrays.copyOf(names, names.length+1);
        names[1]="冯二";
        System.out.println(Arrays.toString(names));
	}

 arrays的经典方法,改为数组长度加一后实现自动扩容。经典就是经典。

作者:赵瑞鑫。支持原创,从你我做起。
原文地址:https://www.cnblogs.com/Winer-Jiu/p/13419683.html