基本上,我得到了这个:
(path
是一个字符串数组)
String writer = "";
for (int i = 0; i < path.length; i++) {
writer += path[i] + "{";
}
writer += string;
for (int i = 0; i < path.length; i++) {
writer += "}";
}
但这看起来丑陋且效率低下。有没有办法将其正确地组合成一个 for 循环?
最佳答案
这是一个没有 for
循环并使用 StringBuilder
而不是 +=
结构的解决方案,这可能会导致内存占用- 以及性能问题。
StringBuilder firstPart = new StringBuilder();
StringBuilder lastPart = new StringBuilder();
Arrays.stream(path)
.forEach(elem -> {
firstPart.append(elem);
firstPart.append("{");
lastPart.append("}");
});
firstPart.append(string);
firstPart.append(lastPart.toString());
String writer = firstPart.toString();
关于java - 避免两个 for 循环并将它们合并为一个的更有效方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47876216/