gpt4 book ai didi

java - 不使用循环合并字符串数组/数组列表

转载 作者:行者123 更新时间:2023-12-01 23:06:33 25 4
gpt4 key购买 nike

我试图做这样的事情:

ArrayList<String> getMerged ( String host, String port, String filesToCopy ){
ArrayList<String> merged = new ArrayList<String>();
merged.add(host);
merged.add(port);
merged.addAll(filesToCopy.split(",")); //which is invalid
return merged;
}

我想知道我们是否可以添加 filesToCopy.split(",") 的元素,而无需使用循环的开销。

此外,如果上述操作可以在字符串数组中完成,例如String[]合并(如果需要,也可以将filesToCopy作为String[]传递),那就更好了,因为在最后,我将把这个 arrayList 转换成一个数组。

我是 Java 编程新手,所以请不要介意这是一个愚蠢的问题。

最佳答案

您可以在单个数组中执行此操作:

String[] files = filesToCopy.split(","); // filesToCopy is an ArrayList, so I'm not
// sure how this works; I'm assuming it's
// a typo. Just get the files array somehow
String[] merged = new String[2 + files.length];
merged[0] = host;
merged[1] = port;
for (int i = 2; i < merged.length; i++) {
merged[i] = files[i-2];
}

或者,没有“循环开销”:

merged[0] = host;
merged[1] = port;
System.arraycopy(files, 0, merged, 2, files.length);

当然,这仍然使用“幕后”循环,这是不可避免的。

关于java - 不使用循环合并字符串数组/数组列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22661982/

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