gpt4 book ai didi

java - 这两个字符串数组命令有什么区别

转载 作者:行者123 更新时间:2023-11-29 10:12:18 25 4
gpt4 key购买 nike

有什么区别

String [] O = {};

String[] Ox = new String[3000];

如何将字符串从 Ox 复制到 O

最佳答案

O 是空数组,Ox 的长度为 3000,要将 Ox 复制到 O,您必须使用copyOf() Arrays 类的 api。

O = Arrays.copyOf(Ox, Ox.length);

Arrays.copyOf() 创建将 O 数组长度更改为 3000 并复制所有内容。

public static void main(String[] args) {
String [] O = {};
String[] Ox = new String[3000];

O = Arrays.copyOf(Ox, Ox.length);
System.out.println("O array length : "+O.length); // I am just printing length
}

输出:

O array length : 3000

Arrays 类的 copyOf() api 的内部实现。

public static char[]  copyOf(char[] original, int newLength) {
char[] copy = new char[newLength];
System.arraycopy(original, 0, copy, 0,
Math.min(original.length, newLength));
return copy;
}

Array不可变的 所以你不能分配 3000 size array to size 0 array, in implementation of copyOf() 方法 java 创建新数组 char[] copy 并使用 native 方法将 original 数组的内容复制到复制数组。

因此,在您的代码中,您不能直接将 Ox 数组内容复制到 O 数组,因为您必须创建大小为 3000 的数组或使用 copyOf( ) Java 接口(interface)。

关于java - 这两个字符串数组命令有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28434389/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com