Java 字符数组无法直接扩容,但可以通过下列步骤变相扩容:创建新数组,长度为原数组的两倍。使用 System.arraycopy() 复制原数组元素到新数组。将新数组赋值给原变量,即可使用原变量访问扩容后的数组。

Java 字符数组扩容
Java 中字符数组无法直接扩容,但可以通过创建新数组并复制现有元素来实现变相扩容。
具体步骤:
- 创建新数组:创建一个新数组,长度比原数组大。通常情况下,新数组的长度为原数组长度的两倍。
char[] newArray = new char[originalArray.length * 2];
-
复制现有元素:使用
System.arraycopy()方法将原数组的元素复制到新数组中。
System.arraycopy(originalArray, 0, newArray, 0, originalArray.length);
- 将新数组赋值给原变量:将新数组赋值给原先存储字符数组的变量,这样就可以使用原变量访问扩容后的数组。
originalArray = newArray;
示例:
立即学习“Java免费学习笔记(深入)”;
char[] originalArray = {'a', 'b', 'c', 'd'};
// 创建新数组,长度为原数组的两倍
char[] newArray = new char[originalArray.length * 2];
// 复制现有元素
System.arraycopy(originalArray, 0, newArray, 0, originalArray.length);
// 将新数组赋值给原变量
originalArray = newArray;
// 添加新元素
originalArray[4] = 'e';
originalArray[5] = 'f';
// 打印扩容后的数组
for (char c : originalArray) {
System.out.print(c);
}输出:
abcdef











